Club Delphi  
    Paypal   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
  #2  
Antiguo 18-09-2011
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.806
Poder: 22
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Veo que uno de los datos que agregas es el ID.
Puede que agregues ID=0 y luego los triggers se encarguen de darle el siguiente número al campo.
En ese caso el Dataset habrá dado la instrucción a FB de que guarde el registro y ha guardado una copia en memoria, para no tener que releerlo.
Mientras no cierres esa tabla/trasnaccion/conexión, el Dataset no se enterará de que en la base de datos se han modificado los datos insertados.

Tienes dos opciones si ese es el problema:
1. Generas el ID antes de insertar y lo asignas al campo.
2. Insertas ID=0 y luego refrescas los datos. No recuerdo la instrucción, pero se que existe.

Si es un generador, puedes tener un SQL que ejecute algo como lo siguiente:

Código SQL [-]
SELECT gen_id(NOMBRE_GENERADOR) from RDB$DATABASE
RDB$DATABASE tiene siempre un solo registro.
Con esto y un trigger que haga más o menos esto:
Código SQL [-]
TRIGGER BEFORE INSERT
begin
  if (new.ID is null) or (new.ID =0) then
     new.ID = gen_id(NOMBRE_GENERADOR);
  ... 
end
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
Algo más que "maestro/detalle": 3 tablas Chandra_ Firebird e Interbase 1 21-12-2010 20:07:03
Muy curioso gluglu La Taberna 10 21-06-2007 03:14:31
Algo curioso al salir de un edit... me lo graba JoanKa Varios 6 20-01-2007 00:26:42
Curioso despertador marcoszorrilla Humor 1 19-05-2006 09:02:29
Algo curioso que me paso, por si les sirve jwmoreira Firebird e Interbase 0 09-07-2005 01:46:53


La franja horaria es GMT +2. Ahora son las 03:50:49.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi