Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-10-2007
FelipeDiaz FelipeDiaz is offline
Miembro
 
Registrado: may 2007
Posts: 75
Poder: 18
FelipeDiaz Va por buen camino
Post Conexion a una BD Firebird

Hola a todos,
Alguien podria ayudarme....

Necesito saber o estar seguro como conectarme desde delphi en tiempo de ejecucion a una BD firebird, por codigo.

No se si ya alguien trato el tema. Tengo componentes FIbPlus.

Gracias
__________________
El Calentamiento Global acabara con la tierra. No mas Barreras, No mas Guerras, No mas discrimiancion, No mas violencia, No mas indiferencia, No mas terrorismo, No mas secuestros. !Valoremos la vida!
Responder Con Cita
  #2  
Antiguo 11-10-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
abajo del todo tienes "hilos relacionados" que tienen enlaces muy interesante y ejemplos.

también en www.firebird.com.mx tienes ejemplos las "guías rápidas de firebird"

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #3  
Antiguo 11-10-2007
FelipeDiaz FelipeDiaz is offline
Miembro
 
Registrado: may 2007
Posts: 75
Poder: 18
FelipeDiaz Va por buen camino
Conexion a BD Firebird

hola Lepe muchas gracias, por la respuesta.


Ya se como lograr la conexion.... En un formulario dejo un FibDatabase configurado con las opciones comunes como son... servidor local, User, Passw, Charset, (Para ahorrar tiempo) y solo en modo ejecucion le escribo el path donde esta la BD, y hago la propiedad Connected = true. y listo.

Bueno ahora (la idea es ir incrementando la complejidad en el desarrollod e una aplicacion) y te agradecieria si me asistieras en una serie de inquietudes,

Quiero ahora hacer esto:

1. Supongamos que tengo una aplicacion que accede a una BD que esta en el directorio BDGENERAL (directorio en donde quiero guardar todas las BD a las que creare y a las que me conectare por medio d emi aplicacion). en ese directorio tengo desde un principio solamente una base de datos llamada MODELO (que sera como una BD Plantilla para crear las otras ).

2. A partir de la BD MODELO, la aplicacion (en delphi) debe Crear otra BD con la misma estructura pero vacias.

Imaginate algo asi como que abres la aplicacion y te presenta una ventana con la pocibilidad de:

a. Abrir Bases de datos (en un principio solo se podra abrir la BD MODELO) ..- ....como Abrir la BD, fue el paso de arriba.

b. Crear una nueva base de datos (A partir de la Modelo)

c. Eliminar.


Ahora necesito saber ......

1. Como crear una base de datos a partir de la estructura de una existente.

2. asi como las tabals de la BD Modelo estan en el Directorio MODELO, la nueva BD debe quedar en un directorio por ejemplo BDNUEVA1.


Observacion:
La aplicacion estara conectada desde un principio de forma persistente a una peuqeña BD que tendra guardado en un campo el ALIAS ( ejemplo MODELO, BDNUEVA1, BDNUEVA2) y en el otro campo la Ruta para poder conectar la correppondiente base de datos, segun la eleccion del Uruario.

Espero no haber sido confuso en al explicacion.

Se que hay muchos ejemplo, pero quisiera que me dijeran en palabras (no necesariamente con codigo) en palabras ....que instrucciones puedo utilizar, y mas o menos ideas o sugerencias, al respecto.

Agradezco toda la colabroacion perstada.

Saludos y gracias.
__________________
El Calentamiento Global acabara con la tierra. No mas Barreras, No mas Guerras, No mas discrimiancion, No mas violencia, No mas indiferencia, No mas terrorismo, No mas secuestros. !Valoremos la vida!
Responder Con Cita
  #4  
Antiguo 11-10-2007
FelipeDiaz FelipeDiaz is offline
Miembro
 
Registrado: may 2007
Posts: 75
Poder: 18
FelipeDiaz Va por buen camino
Smile

Bueno... Lepe antes que me contestes... se me ocurrio esta solucion y creo que me funcionara y es sencilla.

1. Gbak -b permite hacer copia de cada BD. pero si cambias -b por -m Copiaras los Metadatos. osea la estructura.

2. Luego se vuelve a restaurar con el nuevo nombre. Y listo.

En el mismo directorio tienes otra BD igualita.

El primer problema que em surgio es como ejecutar Gbak desde Delphi, luego de varios intentos por codigo... no obtuve sino una copia que al parecer estaba mala.

El codigo es algo parecido a esto:
ShellExecute(handle,'open','"C:\Archivos de programa\Firebird\bin\gbak.exe"',' -m -user SYSDBA -password masterkey "C:\Documents and Settings\Luis Felipe\AGENDA.FDB C:\Documents and Settings\Luis Felipe\COPIA.GBAK"',nil, SW_SHOWNORMAL);

En todo caso.....

Creo haberlo resuelto usando IBBackupService1 y pFIBRestoreService1, son dos componentes que vienen en la paleta FIBPLUSservices que s einstala junto a los FIBPLUS....solo se configuran y se puede hacer copia y restaurar BD de Firebird haciendo un solo Click.

.... Con todo esto ya creo poder crear la Aplicacion que me permita interactuar entre varias BD's Sobretodo, Crear nuevas a partir de un modelo.


En la medida que avance espero compartir mis inquietudes,


Saludos
__________________
El Calentamiento Global acabara con la tierra. No mas Barreras, No mas Guerras, No mas discrimiancion, No mas violencia, No mas indiferencia, No mas terrorismo, No mas secuestros. !Valoremos la vida!
Responder Con Cita
  #5  
Antiguo 11-10-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Otra idea:

Con Ib Expert o EMS puedes extraer todos los metadatos. Esos metadatos los guardas en un archivo de texto. Dicho archivo se carga en un FIBScript (no conozco ese componente, pero debe tenerlo).

Quedaría algo así:
Código SQL [-]
/******************************************************************************/
/****         Generated by IBExpert 2005.06.07 11/10/2007 22:19:27         ****/
/******************************************************************************/

SET SQL DIALECT 3;

SET NAMES ISO8859_1;

CREATE DATABASE 'd:\sistema\nombre1.FDB'
USER 'SYSDBA' PASSWORD 'masterkey'
PAGE_SIZE 4096
DEFAULT CHARACTER SET ISO8859_1;

.... aqui continua, pero lo corto para no extenderme más

Para crear una nueva BBD, solo tienes que modificar la línea del "CREATE DATABASE", después ejecutas el script: FIBScript.Execute y listo, BBDD creada y sin datos.



Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
Respuesta



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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
conexion por red con firebird noe Firebird e Interbase 12 17-03-2008 09:27:17
Conexion con Firebird dblx Conexión con bases de datos 1 25-05-2006 23:23:55
Conexion Firebird con ASP neon_pc Firebird e Interbase 1 22-05-2006 15:55:13
conexion a FIREBIRD ronson JAVA 3 26-05-2004 16:15:42
Conexion con firebird 1.5 xerkan Firebird e Interbase 4 22-09-2003 18:23:43


La franja horaria es GMT +2. Ahora son las 16:23:07.


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