lunes, 26 de octubre de 2015

Crear campo generador en Firebird

Muchas veces necesitamos tener un código que sea secuencial o autonumerico, en Firebird se llama generador y se crea con el siguiente código:

CREATE GENERATOR GEN_CLIENTE_DIRECCION;

Luego creamos un trigger el cual incrementara en 1 usando la funcion GEN_ID el generador, este es el código:

CREATE TRIGGER BI_CLIENTE_DIRECCION_ID_DIR FOR CLIENTE_DIRECCION
ACTIVE BEFORE INSERT
POSITION 0
AS
BEGIN

  IF (NEW.ID_TABLA IS NULL OR NEW.ID_TABLA = 0) THEN
      NEW.ID_TABLA = GEN_ID(GEN_CLIENTE_DIRECCION, 1);
END;


En PowerBuilder no se necesita programar nada y se incrementara cada vez que se haga Update al DataWindow.

No hay comentarios: