FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Crear base de datos
Hola, me gustaria saber si alguien sabe como crear una base de datos en tiempo de ejecucion en interbase/firebird sabiendo el host en el cual la quiero crear y su ruta
|
#2
|
|||
|
|||
Hola.
Si entiendo bien, lo que necesitas es ejecutar un script sql con algo como: Código:
CREATE DATABASE 'servidor:unidad:\ruta\db.gdb' USER 'SYSDBA' PASSWORD 'masterkey' PAGE_SIZE = 8192 DEFAULT CHARACTER SET ISO8859_1 CREATE TABLE "Tabla1" ( "Id" Numeric (18,0) NOT NULL, "Dato1" VARCHAR (50) CHARACTER SET ISO8859_1 COLLATE ES_ES NOT NULL PRIMARY KEY ("Id")); . . . . |
#3
|
|||
|
|||
Si pero lo q me gustaria saber es como hacer q el delphi automaticamente cree una base de datos en un host remoto en tiempo de ejecucion (q componentes usar, etc)
|
#4
|
|||
|
|||
Hola.
Yo en lo personal utilizo los Ib_Objects para mis conecciones nativas con firbird, en esos paquetes hay un componente llamado TIB_Script. Yo lo utilizo en la instalación de mis aplicaciones, lo que hago es verificar si existe la base de datos antes de conectarme y si no está, ejecuto el script con la definición de la base de datos para crearla. Es tan facil como cargar el script con la definición de tu Base de Datos completa o con alguna otra instrucción SQL y ejecutar el script. Lo "complicado" seria crear el script, que lo puedes hacer mediante algun entorno de diseño (IB_Expert, IB_Manager, etc) y luego que tengas lo que quieres extraes la definición (metadata). En la paleta de interbase hay un componente llamado IBSQL que, supongo, debe ser igual o parecido al que yo utilizo y asi en cada paquete de coneccines debe haber algún componente para ejecutar scripts de SQL, ya quedaría de tu parte elegir el que mejor te convenga. Espero haber entendido lo que necesitas esta vez. |
#5
|
|||
|
|||
Cita:
|
#6
|
|||
|
|||
E visto q para usar un script asi ahi q usar los componentes ibo, ya q prove en los ibx y no me funciono (necesitas linkar un ibdatabase y tiene este q estar abierta una base de datos q es la q creo crear), con los ibo lo prove y aunq ahi q linkar un ibconection este no tiene q estar abierto y me creo la bd.
Mi idea de crear una bd es porq voy a hacer una aplicacion comerciar multiempresa y quiero q las tablas de cada empresa se encuentren en bd distintas, para lo q pensaba en usar ibx y luego pasarme a otros componentes mas adelante por el tema de la compatibilidad del firebird, pero igual me planteo en hacerlo directamente en los componentes ibo, los cuales no conozco muy bien ni la licencia q tendria mi empresa q pagar al no ser gratuitos ni la rapidez de esta usando los controles normales de acceso a bd (no los suyos). Tambien me interesaria saber como se usarian para crear aplicaciones personales y libres(creo q la licencia suya lo permite hacer sin pagar) ya q cuando ejecuto una aplicacion con los componentes ibo sin estar el delphi a la vez en funcionamiento me sale un cuadro de dialogo diciendo q me registre Última edición por xerkan fecha: 30-09-2003 a las 12:19:30. |
#7
|
|||
|
|||
Hola xerkan.-
Con respecto a la licencia no sabría responderte pues los IBO que yo utilizo son los de mi trabajo y del asunto de la licencia se encargan mis jefes. Con respecto a lo demás, la rapidez no es problema IBO es rápido, según mi jefe de proyectos ha hecho comparaciones y son rápidos, el único problema con los IBO es que para sacarles el jugo hay que trabajar con los componentes nativos y al hacer esto te tienes que casar con ellos pues no son compatibles con TDataSet, pero la velocidad y el control valen la pena. Con lo del mensaje, ese mensaje te sale porque es un demo de los componentes, al pagar la licencia te instalas los paquetes completos (con fuentes) y sin mensajitos ni nada. Pero no te apresures, hay otros componentes para conexión a Interbase/Firebird, están los Fib_plus, los Zeos (creo que gratis) y otros, busca y documéntate bien a ver cual te conviene mas. En mi caso no pude elegir pues cuando conseguí empleo me sentaron en una computadora con delphi6, Firebird e IB_Objects, por eso no conozco los demás componentes pues nunca trabaje antes con Interbase y cuando comencé a trabajar fue directo con IBO, lo demás lo sé por teoría pues en la práctica no he probado ningún otro. Bueno, espero que te sirva todo esto y suerte. |
#8
|
|||
|
|||
Bien el fibplus y el zeos los e probado (igual no a fondo del todo) pero el zeos lo descarte por q queria un componente exclusivo (mas rapido) el fibplus es muy parecido al ibx (me hace lo mismo con el create database), y el ibo parece q hiba bien (aunq me falta probarlo un poco mas), aunq me gustaria saber como se comporta con los componentes de aceso normales ya q quiero usar un grid multicolor (2 colores por cada columna) y para no atarme a los suyos
|
#9
|
|||
|
|||
Aunque tarde pero creo que bien, yo lo he conseguido de la siguiente manera, si bien no sirve para el que preguntaba, que sirva para alguien que tenga la misma duda:
con el componente TIBDatabase de la paleta de Delphi 5 (en mi caso) y Firebird 1.5 Código Delphi [-] with IBDatabase1.Params do begin Clear;end; IBDatabase1.SQLDialect:=3; y verificaremos que se crea la base de datos. |
#10
|
|||
|
|||
Yo me pensaba terco...
Tres años!!!! ni mi novia cuando quiere algo |
#11
|
||||
|
||||
cual seria el equicalente del IBScript en DBExpress ?
No se con q crear una base de datos en tiempo de ejecucion con estos componentes... {Saludos} |
|
|
|