Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Configurara Base por progrma.. (https://www.clubdelphi.com/foros/showthread.php?t=38603)

BlueSteel 20-12-2006 15:52:56

Configurara Base por progrma..
 
Hola amigos...

quisiera saber como puedo hacerlo para crear un apartado de mantenimiento para la conexión de mi programa con la base de datos... es decir,,, cuando realizo mi aplicación, lo hago contra un servidor remoto donde esta el Interbase,, pero aveces tengo que conectarlas en forma local... y es allí donde tengo problemas...

hice un modulo de mantención en donde me pido los datos del tipo de base... pero no se como traspasarlos a la base para que esta se quede configurada....

en un Form de tipo DataModule (llamado Datos) tengo
TIBDatabase llamado IBD_Datos

y en u Form llamado Mantencion, pido lo siguiente:
tipo servidor (local/remoto)
nombre servidor (en el caso de ser remoto)
nombre de usuario
contraseña
y dirección de la base....

estos datos los almaceno en un archivo .ini...

pero mi pregunta es como los traspaso al IBD_Datos para que quede configurado...???

BlueSteel 20-12-2006 16:14:17

Encontre esto..
 
despistado como siempre... pregunto y luego busco... ...

buscando en el foro encontre esto... en parte me sirve...

Código Delphi [-]

   // Algo similar a ésto... para asignarle valores
   IBDataBase.LoginPrompt := False;
   IBDataBase.DatabaseName := DBName;  //pe:  \\192.168.80.5\...
   IBDataBase.Params.Add( 'USER_NAME=usuario);
   IBDataBase.Params.Add( 'PASSWORD=clave);
   IBDataBase.SQLDialect := 3;
   IBDataBase.TraceFlags := [];
   IBDataBase.IdleTimer := 0;
   IBDataBase.Connected := True;

mi problema seria traspasarle los datos como usuario y clave que estan en vUsu.Text y vCla.Text respectivamente

Onti 20-12-2006 17:58:08

Curiosamente yo utilizo un datamodule llamado datos para contener a los componentes de coneccion (TIBDatabase, etc)

En un formulario de obtienes los datos de usuario y contraseña base de datos a la que se conecta
( si es local directamente el path --> d:\dbms\base.gdb
si es remota ip+path --> 192.168.0.1:d:\dbms\base.gdb
)

y los asignas a tu TIBDatabase ubicado en tu datmodule
Código Delphi [-]
  .
  .
  Datos.IBD_Datos.DatabaseName :=NomBase;
  Datos.IBD_Datos.Conected        :=True;

y tus componentes Query, Table apuntan a Datos.IBD_Datos

cuando necesites apunta a otra base de datos el procedimiento es el mismo, cierras la base cambias valores a Datos.IBD_Datos y lo coenctas con Datos.IBD_Datos.Conected :=True;

Espero te sirva

egostar 20-12-2006 18:23:39

Cita:

Empezado por BlueSteel

Código Delphi [-]
// Algo similar a ésto... para asignarle valores
   IBDataBase.LoginPrompt := False;
   IBDataBase.DatabaseName := DBName;  //pe:  \\192.168.80.5\...
   IBDataBase.Params.Add( 'USER_NAME=usuario);
   IBDataBase.Params.Add( 'PASSWORD=clave);
   IBDataBase.SQLDialect := 3;
   IBDataBase.TraceFlags := [];
   IBDataBase.IdleTimer := 0;
   IBDataBase.Connected := True;

mi problema seria traspasarle los datos como usuario y clave que estan en vUsu.Text y vCla.Text respectivamente

Pues asi, directamente

Código Delphi [-]
   IBDataBase.Params.Add( 'USER_NAME='+vUsu.Text);
   IBDataBase.Params.Add( 'PASSWORD='+vCla.Text);

Saludos.

rmenor 27-12-2006 11:58:31

Yo tube problemas con eso
 
Recientemente he hecho una aplicación como la que estas indicando pero y lo hice de la siguiente manera porque si no me daba errores:

Código Delphi [-]
dm_general.db_multigestor.Params.Values ['user_name'] := e_usuario.Text;    
dm_general.db_multigestor.Params.Values ['password'] := e_contrasena.Text;    
dm_general.db_multigestor.DatabaseName := e_servidor.Text + ':' + e_ruta.Text + e_nombre.Text + '.FDB';



la base de datos es el db_multigestor y en params tienes que crear una sola vez los valores user_name= y password= y como ves después los utilizas. De la manera que te han explicado me probocaba error al intentar modificar las rutas. e_usuario y e_contrasena son dos edit modificables.


La franja horaria es GMT +2. Ahora son las 02:36:10.

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