Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-06-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
Como sabe un query a que tabla quiero hacer append?

Hola a todos. Estoy pasando un codigo de bde (tablas) a ado y me he encontrado con una duda más teorica que no otra cosa. Resulta q tengo un ADOQuery con la string 'select * from tCONCFACT', con una conexión a la base de datos correspondiente. Antes con la bde se usaba el metodo append para insertar los datos de un nuevo registro. Mi sorpresa es que al hacer este codigo

Código Delphi [-]

query1.Active := false;
query1.SQL.text := 'select * from tCONCFACT';
query1.Active := true;

query1.Append;
query1.FieldValues['id'] := id;
query1.FieldValues['id_elem'] := id_elem;
... etc....
query1.post;

me lo postea a la tabla correcta (de la infinidad que hay en esa base de datos). Aqui es donde viene mi duda, pues en ningun lado excepto en la consulta se indica a que tabla quiero q se posteen los datos. Que pasa? que guarda en algun lugar la última tabla donde se ha trabajado? si hago consultas a diferentes tablas con la misma query...perderé la tabla a la que apunta? entonces, estoy obligado a hacer un select antes de usar el metodo append? ...la query se ha cargado con los campos correspondientes en tiempo de diseño. Es eso lo que determina a que tabla se quiere apuntar? como ya digo, es mas para conocer la teoria que no otra cosa, pues seguramente usaré 'insert into' para meter los datos.

saludos y gracias de antemano.

Última edición por coso fecha: 14-06-2008 a las 20:21:45.
Responder Con Cita
  #2  
Antiguo 14-06-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
La verdad no entiendo la duda.
Query1 contiene una sentencia sql que hace el enlace con la tabla, si este se activa se podra usar en cualquier parte que siempre hara referencia a esa tabla, otra cosa seria si este mismo query se usara en otras ocasiones, algo asi:
Código Delphi [-]
query1.Active := false;
query1.SQL.text := 'select * from tCONCFACT'
query1.Active := true;

query1.Append;
query1.FieldValues['id'] := id;
query1.FieldValues['id_elem'] := id_elem
... etc....
query1.post;

query1.Active := false;
query1.SQL.text := 'select * from OtraTabla'
query1.Active := true;

query1.Append;
query1.FieldValues['id'] := id;
query1.FieldValues['id_elem'] := id_elem
... etc....
query1.post;
Como ves en este ejemplo use el mismo query pero ligado a diferentes tablas, si no lo cierro al final, siempre seguira viendo la ultima tabla.

No se si esta es tu duda??.
Saludos
Responder Con Cita
  #3  
Antiguo 14-06-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
si esto era, que si se quedaba apuntando a la ultima tabla donde se trabajaba. En este caso, donde se guarda el nombre de la tabla a donde apunta?
Responder Con Cita
  #4  
Antiguo 14-06-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Pues no se donde se guarda la informacion que contiene el query, supongo que el componente contendra un espacio de memoria o el programa se lo asigna, no lo se, pero asi es como trabaja, siempre mantendra el ultimo dato.
Saludos
Responder Con Cita
  #5  
Antiguo 14-06-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
Ok gracias Caral. Solo era una curiosidad
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Alguien sabe como hacer esto? MaMu Gráficos 3 18-05-2007 18:33:43
Alguien sabe como hacer que una query sea modificable pjmedina Varios 20 12-04-2007 11:17:27
Porque lee la tabla completa al hacer append? judit25 Conexión con bases de datos 2 31-05-2006 16:20:37
Alguien sabe como hacer que tu aplicacion se ejecute... Supra Varios 7 05-02-2005 21:10:09
Alguien sabe como hacer un ShotDown a Firebird 1.51???? AGAG4 Conexión con bases de datos 3 28-10-2004 18:02:21


La franja horaria es GMT +2. Ahora son las 17:52:08.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi