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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-02-2008
Ubed Ubed is offline
Miembro
 
Registrado: ago 2007
Posts: 71
Poder: 17
Ubed Va por buen camino
Problema con los IBO y Firebird

Hola tengo una aplicacion con esta funcion para generar los autoincrementos, pero he tenido que cambiar los ib_Dataset por dataset normales.

Bien mi problema es que como debo hacer esta funcion ahora?

Código Delphi [-]
if (IB_Dataset.State=dssInsert) AND (IB_Dataset.FieldByName('ID_MONITOR').IsNull) then
    IB_Dataset.FieldByName('ID_MONITOR').AsInteger:=IB_Dataset.Gen_ID('GEN_ID_MONITOR',1);
end;

Gracias de antemano
Responder Con Cita
  #2  
Antiguo 29-02-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Esto suele hacerse del lado servidor, dentro de la base de datos en un trigger before insert:
Código SQL [-]
if new.id_monitor is null then 
  new.id_monitor = Gen_ID('GEN_ID_MONITOR',1);
Ahora al tiempo de insertar, omites el campo id_monitor o directamente en la SQL le pasas el valor NULL (declara la unidad Variants en el uses para que compile).

Para hacerlo del método que tú quieres, tendrías que lanzar otra consulta más para generar el valor:
Código Delphi [-]
query1.sql.text := 'select Gen_ID('+ quotedstr('GEN_ID_MONITOR')+',1)';
query1.Open
IB_Dataset.FieldByName('ID_MONITOR').AsInteger:=
query1.Fields[0].AsInteger;
query1.Close;
(dicho de memoria, espero que funcione).

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
Problema de UDF en Firebird 2.0 Kipow Firebird e Interbase 2 14-04-2008 16:34:51
Problema con Firebird en red capo979 Firebird e Interbase 7 27-08-2007 19:39:09
Firebird: Problema con LIKE rretamar Firebird e Interbase 11 07-03-2007 18:47:57
Problema con FireBird AGAG4 Firebird e Interbase 11 02-04-2005 01:26:23
Problema C# y Firebird AdrianD .NET 6 07-09-2004 23:40:38


La franja horaria es GMT +2. Ahora son las 08:35:08.


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