FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
¿Como creo una tabla desde un fichero .ini?
Teniendo resuelto el problema de como crear una BD si esta no existe, ahora vuelvo a apelar a vuestra sabiduría.
Mi idea es crear las tablas necesarias desde un fichero .INI (He oído hablar de archivos .cmp donde pones las sentencias SQL, pero no sé como se usan). ¿Que componente puedo utilizar para cuando lea una sección del fichero .INI ejecute la sentencia SQL? [TUSUARIOS] CREATE TABLE TUSUARIOS ( "IDUSUARIO" INTEGER NOT NULL, "USUARIO" VARCHAR(50) , "CLAVEACCESO" VARCHAR(50) , "FECHACADUCIDAD" TIMESTAMP ; CONSTRAINT "TUSUARIOSPRIMARYKEY" PRIMARY KEY ("IDUSUARIO") ); CREATE UNIQUE INDEX "USUARIOKEY" ON "TUSUARIOS"("USUARIO"); |
#2
|
|||
|
|||
Hola...
Falta información, que base de datos y que componentes estás usando para conectarte a esa base de datos... Saludos... |
#3
|
||||
|
||||
Utilizo Firebird, y para la creación de la BD estoy utilizando el TIBDataBase
|
#4
|
|||
|
|||
Hola...
Si usas Firebird y los componentes IBX, estos tienen un componente llamado TIBScript que te puede servir para lo que necesitas. Ahora, los archivos INI usan un formato específico para guardar los valores y no funcionan de la forma como quieres hacerlo. Yo te recomendaría que crees archivos de script (.sql) con la definición de la tabla y en el ini hagas referencia a este archivo. Archivo INI: Código:
[Tablas] TUsuarios=DefTablas\usuarios.sql
Desde tu aplicación lees el archivo INI, obtienes la ruta del archivo SQL, lo cargas en el componente TIBScript y ejecutas el script. Saludos... |
#5
|
||||
|
||||
maeyanes, ante todo darte las gracias por tu ayuda.
A ver si capto un poco como funciona. Tengo un TIBDataBase: Name: dbCrearBD E añadido un TIBScript: Name ScriptBD DataBase: dbCrearBD En c:\BD\tbsistema.ini [Tablas] TUsuarios=c:\BD\usuarios.sql En c:\BD\usuarios.sql CREATE TABLE TUSUARIOS ( "IDUSUARIO" INTEGER NOT NULL, "USUARIO" VARCHAR(50) , "CLAVEACCESO" VARCHAR(50) , "FECHACADUCIDAD" TIMESTAMP ; CONSTRAINT "TUSUARIOSPRIMARYKEY" PRIMARY KEY ("IDUSUARIO") ); CREATE UNIQUE INDEX "USUARIOKEY" ON "TUSUARIOS"("USUARIO");
Me da el siguiente error [DCC Error] E2010 Incompatible types: 'TStrings' and 'string' Última edición por Thoma fecha: 28-07-2011 a las 17:33:31. |
#6
|
|||
|
|||
Hola...
Tú código está bien, solo que estás obteniendo mal la información. Una version corregida sería:
Saludos... |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
¿Cómo creo una base de datos desde Delphi? | Thoma | Firebird e Interbase | 12 | 27-07-2011 20:27:16 |
como creo una tabla mientras el programa esta en ejecucion? | gonza_619 | Varios | 3 | 15-02-2010 13:44:36 |
insertar datos en una tabla desde fichero XML??? | mguixot | Conexión con bases de datos | 2 | 17-05-2006 16:18:04 |
Como creo campos en una tabla Paradox?? | JoseQ | Conexión con bases de datos | 1 | 13-07-2004 19:07:09 |
Como creo, inserto y leo un txt desde delphi? | danytorres | Varios | 5 | 28-11-2003 21:17:17 |
|