Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

 
 
Herramientas Buscar en Tema Desplegado
  #10  
Antiguo 15-11-2022
amadis amadis is offline
Miembro
 
Registrado: may 2005
Ubicación: San José, Colón, Entre Ríos, Argentina
Posts: 315
Poder: 20
amadis Va por buen camino
Cita:
Empezado por mamcx Ver Mensaje
Yo uso un sistema muy simple.

Incrusto como una constante el archivo con las migraciones dentro del .exe, en este formato:


Código SQL [-]
--version: 2

DROP TRIGGER IF EXISTS visit_code_update_tg ON payment;

--version: 3
ALTER TABLE doc_codes
ADD COLUMN doc_code  TEXT PRIMARY KEY DEFAULT generate_ulid() CHECK (not_empty(doc_code));

Eso lo comparo contra la version de la BD y simplemente es partir el archivo, chequear la version y recorrerlo.
Podrias compartir un poco mas sobre como haces la comparacion y el archivo con las constantes.?

En cuanto a la logica para el chequeo, se me ocurre en el source, del form principal, luego de crear los datos y conexion a bd.

Código Delphi [-]
IF tablafirebird.DBVERSION < VERACTUAL
then actualiza
else ejecuta el programa

Mi procedure Actualiza lo vengo haciendo asi
pero es un lio
Código Delphi [-]
If dbversion = 2 then Actaliza3;
If dbversion = 3 then Actaliza4;
If dbversion = x then Actalizax+1;
// asi tengo tantas lineas If ejecutando procedures como versiones

Cada procedure carga en un TFDQuery las sentencia SQL necesarias para actualizar a la version en cuestión.

Funciona, pero me parece que no es prolijo.
Responder Con Cita
 



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
[FireDAC] Desconexión a la Base de Datos MAXIUM Conexión con bases de datos 4 14-06-2021 20:12:59
Filtrar Base de Datos FireDac pokexperto1 Conexión con bases de datos 6 03-10-2015 00:26:07
Controlar Cambios en la Base de Datos afunez2007 MS SQL Server 5 12-07-2013 18:04:12
Chequear integridad base de datos Toni Firebird e Interbase 4 09-01-2013 20:02:34
Como hacer conexión de una base de datos en firebird. Niiña Conexión con bases de datos 5 28-11-2011 22:43:04


La franja horaria es GMT +2. Ahora son las 00:58:46.


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