Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Cargar diferente bases de datos (https://www.clubdelphi.com/foros/showthread.php?t=17044)

Nbull 21-12-2004 12:46:35

Cargar diferente bases de datos
 
Hola, tengo una aplicación que carga una base de datos de access llamada Empresas, uso Ado y tengo componentes AdoQuery,AdoCommand y me conecto a la base de datos a traves del componente AdoConecction.Uso Delphi 7.

Lo que quiero hacer,bueno, quieren que haga, es que me cargue diferentes bases de datos, es decir, bases de datos iguales pero con diferentes registros.
Para ello claro esta, he de cambiar la conexión con la base de datos y el alias del ODBC ¿no?

La aplicación ya la tengo terminada, pero ahora, me piden esto y la verdad que no se como hacerlo.He pensado poner OpenDialog y que seleccionen la base de datos que quieran cargar y en el execute cambiar el ConnectionString a la ruta que seleccione el usuario y con la base de datos que seleccione el usuario.

Mi pregunta es si con esto solo me bastara para cambiar la base de datos con la que trabaja mi aplicación a la que seleccione el usuario.

Si no se hace asi me podriais explicar como se hace Muchas gracias de antemano.;)

Un Saludo.

Neftali [Germán.Estévez] 21-12-2004 13:08:04

Cita:

Empezado por Nbull
Para ello claro esta, he de cambiar la conexión con la base de datos y el alias del ODBC ¿no?

Para ello sólo tienes que cambiar la propiedad ConnectionString del componentes de conexión ADOConnection, para que apunte a la nueva Base de Datos.
Otra cosa, para conectar a una BD access con ADO no se usa ningun "Alias del ODBC" como comentas, simplemente se conecta directamente. Si estás utilizando ésto para conectarte creo que "estás dando más vueltas" de las necesarias. En el ADOConnection basta con que selecciones "Microsoft Jet 4.0 OLEDB Provider" y la Base de Datos Access.

Nbull 21-12-2004 13:16:27

Hola Neftalí como llevas la mañana, gracias por tu respuesta es lo que quería saber, una cosa, que puedo hacer si el usuario intenta cargar una base de datos que no tiene las mismas tablas y campos que yo he definido, supongo que me dara una excepción.

Como puedo comparar las tablas y campos de la base de datos que intenta cargar el usuario con la mia, y sino son iguales avisarlo de que no son iguales,
Bueno lo de avisarlo ya me lo curro lo que no se es como compararlas.

Gracias.
Un saludo Neftalí.

Neftali [Germán.Estévez] 21-12-2004 15:38:39

Cita:

Empezado por Nbull
Como puedo comparar las tablas y campos de la base de datos que intenta cargar el usuario con la mia, y sino son iguales avisarlo de que no son iguales...

El propio TADOConnection posee dos métodos llamados: GetFieldNames, y GetTableNames; Tal vez tenga algo que ver con lo que necesitas...;)


La franja horaria es GMT +2. Ahora son las 14:52:39.

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