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 Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-10-2004
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Poder: 21
gluglu Va por buen camino
Abrir una Base de Datos en Tiempo de Ejecución

Hola a todos de nuevo,

Después de mi recuperación de una dichosa gripe que me ha mantenido apartado dos días vuelvo con esta duda.

Intento abrir una base de datos en tiempo de ejecución, pero el DBGrid correspondiente no me muestra nada de nada. Por supuesto si hago lo mismo en tiempo de diseño, todo me funciona de maravilla.
Código Delphi [-]
IBDatabase2.Connected    := False;
IBDatabase2.DatabaseName := IBQuery1.FieldByName('DIRECTORY').Value + '\MASTERH.IB';
IBDatabase2.Connected    := True;
IBTransaction2.Active    := True;
IBQuery2.Prepare;
IBQuery2.Open;
DBGrid2.SetFocus;
Estoy convencido de que abrirme la base de datos me la abre correctamente ya que me pide el Login con su clave correspondiente. Es más, si la base de datos no existe en el directorio indicado me da error.

Por lo tanto no sé donde puede estar el fallo para que el DBGrid2 no me muestre nada.

Saludos a todos.
Responder Con Cita
  #2  
Antiguo 14-10-2004
quetzal quetzal is offline
Miembro
 
Registrado: may 2003
Posts: 78
Poder: 21
quetzal Va por buen camino
Question

Y despues de Abrir tu base de Datos, abriste tambien la tabla en la cual esta conectada al grid?
Responder Con Cita
  #3  
Antiguo 14-10-2004
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Poder: 21
gluglu Va por buen camino
Gracias, quetzal

No utilizo ninguna tabla o componente TTable. Lo que utilizo, tal y como se muestra en mi hilo es un TIBQuery, cuyo comando SQL está indicado en tiempo de diseño.

Por ello creo que debe de bastar con IBQuery2.Prepare e IBQuery2.Open

El DBGrid2 está asociado en tiempo de diseño al DataSource2, que a su vez está asociado al DataSet IBQuery2.

La cuestión, insisto, es que todo me funciona correctamente no sólo en tiempo de diseño, sino que de hecho lo que hago con el código indicado es cambiar de una base de datos a otra. Al abrir el Form la primera vez me muestra todo correctamente pero al intentar cambiar la base de datos con ese código, ya el DBGrid2 se queda en blanco.

De cualquiera de las maneras, ante la duda, he probado con el siguiente código añadido y tampoco nada.
Código Delphi [-]
IBDatabase2.Connected    := False;
IBDatabase2.DatabaseName := IBQuery1.FieldByName('DIRECTORY').Value + '\MASTERH.IB';
IBDatabase2.Connected    := True;
IBTransaction2.Active    := True;
IBQuery2.Prepare;
IBQuery2.Open;
DataSource2.DataSet      := IBQuery2;
DBGrid2.DataSource       := DataSource2;
DBGrid2.SetFocus;
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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


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


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