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.