FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Autoincremental Firebird
Hola acabo de pasar una b.d. de paradox a firebird 1.5. Los campos autoincrementales de paradox se me han convertido en Triggers para que la aplicación pueda funcionar, pero cuando estos campos pertenecen a una clave primaria, el Trigger falla, y no me deja
Insertar, me salta este error: “Field CODIGO must have a value”. Claro, ya que no permite una clave en nulo. La tabla es esta: CREATE TABLE "ACTU_VINCULOS" ( "CODIGO" INTEGER NOT NULL /* "CODIGO" */ , "COD_REPRE" VARCHAR(10) /* "COD_REPRE" */ , "QUERYCAB" VARCHAR(100) /* "QUERY CAB" */ , "QUERYLIN" VARCHAR(100) /* "QUERY LIN" */ ); /* Indexes for table "ACTU_VINCULOS.DB" */ /* Found Index Primary Index For This Table, Options [ixPrimary,ixUnique] */ ALTER TABLE "ACTU_VINCULOS" ADD CONSTRAINT "ACTU_VINCULOS_PRIMARY" PRIMARY KEY ("CODIGO"); /* Generators for AutoInc fields for table "ACTU_VINCULOS.DB" */ /* SELECT max(ACTU_VINCULOS.DB.CODIGO) FROM ACTU_VINCULOS.DB */ CREATE GENERATOR "GEN_ACTU_VINCULOS_CODIGO"; SET GENERATOR "GEN_ACTU_VINCULOS_CODIGO" TO 15; SET TERM ^; CREATE TRIGGER "TRIG_ACTU_VINCULOS_BI" FOR "ACTU_VINCULOS" BEFORE INSERT AS BEGIN IF(NEW."CODIGO" IS NULL) THEN NEW."CODIGO" = GEN_ID("GEN_ACTU_VINCULOS_CODIGO",1); END ^ Alguien podría decirme por qué no se dispara el Trigger? Muchas gracias a todos. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Modificar AutoIncremental | tarco35 | Conexión con bases de datos | 6 | 12-04-2005 20:06:23 |
Campo autoincremental en Oracle | Onti | Oracle | 5 | 25-02-2004 04:59:11 |
Campo autoincremental | tarco35 | Tablas planas | 1 | 10-11-2003 14:53:25 |
Campo AutoIncremental PrimaryKey | cpal | Firebird e Interbase | 13 | 10-09-2003 19:21:50 |
campo AutoIncremental en Interbase | Alejo | Firebird e Interbase | 3 | 28-08-2003 00:27:06 |
|