Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-11-2005
JuanErasmo JuanErasmo is offline
Miembro
 
Registrado: ago 2005
Posts: 544
Poder: 19
JuanErasmo Va por buen camino
Como crear un campo que sea un consecutivo?

Buenas tardes.
Necesito saber como hacer para que un campo sea autoincremental.
Que cada vez que le dé insertar (+) me incremete un campo.
Muchas gracias.
Responder Con Cita
  #2  
Antiguo 04-11-2005
cahp cahp is offline
Miembro
 
Registrado: may 2003
Ubicación: Alicante
Posts: 90
Poder: 22
cahp Va por buen camino
Tienes que hacerlo con un generador, en interbase/firebird, no existen los campos autoincrementales.

Saludos.
Responder Con Cita
  #3  
Antiguo 04-11-2005
JuanErasmo JuanErasmo is offline
Miembro
 
Registrado: ago 2005
Posts: 544
Poder: 19
JuanErasmo Va por buen camino
Buenas tardes.

Cumpliría la misma función? como sería?
Responder Con Cita
  #4  
Antiguo 04-11-2005
Avatar de AGAG4
AGAG4 AGAG4 is offline
Miembro
 
Registrado: ago 2004
Ubicación: Los Mochis, Sinaloa, México
Posts: 1.420
Poder: 21
AGAG4 Va por buen camino
Checa Esto....

Existen los campos incrementables pero en los IBX's ignoro si en los fibPlus ó los MDO pero los IBX's tienen una propiedad GENERATORFIELD, alli solo especificas el nombre del generador, el campo a afectar y los eventos cuando se aumentará dicho valor en el campo.

Primeramente tienes que Crear un generador en Firebird si no sabes como, bajate el programa www.ibexpert.com en la versión personal, aqui registras tu base de datos y cuando la abres al final viene un apartado que dice GENERATOR.

Saludos....
Responder Con Cita
  #5  
Antiguo 05-11-2005
cahp cahp is offline
Miembro
 
Registrado: may 2003
Ubicación: Alicante
Posts: 90
Poder: 22
cahp Va por buen camino
Para crear el generador:
Código SQL [-]
CREATE GENERATOR Nombre

Para dar valoor al campo, creas un Trigger before insert en la tabla:
Código SQL [-]
IF (NEW.CAMPO IS NULL) THEN
      NEW.CAMPO = GEN_ID(Nombre, 1);

Saludos.
Responder Con Cita
  #6  
Antiguo 10-11-2005
ronaldhr ronaldhr is offline
Registrado
 
Registrado: nov 2005
Posts: 5
Poder: 0
ronaldhr Va por buen camino
Descarga el manual de Interbase allí explica muy bien como usar los generadores, si necesitas consultarlos puedes hacer algo así

Código:
SELECT GEN_ID(conteo, 0) FROM rdb$database
Lo puedes incrementar en un INSERT o UPDATE.

Y para fijarlo usas esto

Código:
SET GENERATOR conteo TO 125
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


La franja horaria es GMT +2. Ahora son las 14:01:16.


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