![]() |
Se pueden tener 2 tablas abiertas a la vez utilizando ADO y DBgrid?
No tengo mucha idea con BD.
Tengo una conexión a una base de datos access (requisito obligado) con ADO. Utilizo un Datamodule con una conexión ADO (ADOConnection1) un ADOTable1 con una tabla de la base de datos y un DataSource1 que hace referencia a la ADOTable1 En el programa utilizo para conectar:
En el programa añado un DBNavigator (botones de edición, etc) un DBgrid y todo va bien. Ahora bien si utilizo otra tabla (ADOtable2 y Datasource2) y pongo el navegador y DBGrid y me aparecen desactivados los controles de la tabla 2. En el código los activo etc... ¿Ya he dicho que no estoy muy puesto con Base de datos ? ¿Que estoy haciendo mal? Saludos. |
y estas seguro que estas abriendo (.Active := True) la segunda tabla
|
Si ya he probado a ponerlo active,tanto en el componente como en el código. Sólo que al hacer pruebas y recompilar los he puesto como comentario. (ya cambio el código anterior)
¿La pregunta es que si se pueden abrir todas las tablas que se quiera a la vez con ADO? o será necesario utilizar otro método y como? |
Hola alquimista, puedes abrir todas las tablas que quieras con AdoTable, como estas haciendo AdoTable.Active := True; lo que te entiendo es que quieres mostrar cada uno, con un dbgrid y un dbNavigator diferentes por tabla, entonces necesitas un dataSource por cada AdoTable y lo enlazas a su respectivo dbGrid y dbNavigator en su propiedad DatSource de ambos.
Saluditos |
Eso es lo que estoy haciendo y no se por que no se me activan dos tablas a la vez.
Delphi 2006, Windows XP SP3, Access creado en versión 2007 pero grabado en formato 2003 (*.mdb) sin relaciones ningunas y campos de texto y número. Lo curioso que en el IDE si que se activa el DBGRID y aparecen los valores metidos y en runtime aparece como desactivada una de las dos tablas. Las activo al crear el form principal. Gracias... |
Solucionado...
Se me quedo el código anterior fuera del formcreate y no me di cuenta. Activado todo y funciona Ok. Gracias por las respuestas ya que me han llevado a la solución de que algo había hecho mal. Gracias |
| La franja horaria es GMT +2. Ahora son las 07:24:50. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi