Saludos a todos,
Me podrían ayudar con un problema que se me presentó en postgreSQL. Lo que pasa es que tengo una tabla llamada adm_dependencia con la siguiente estructura
CREATE TABLE "prueba."adm_dependencia"(
"dep_codigo" BigSerial NOT NULL,
"dep_nombre" Character varying(150),
"dep_siglas" Character varying(20),
"dep_estado" Character(1),
"tdep_codigo" Bigint NOT NULL
) WITH (OIDS=FALSE);
y la llave primaria es dep_codigo:
ALTER TABLE "prueba"."adm_dependencia" ADD CONSTRAINT pk_adm_dependencia" PRIMARY KEY ("dep_codigo");
Ahora, diseñé una interfaz usando zend framework, para guardar informacion en esa tabla y envío datos en todos los campos excepto el dep_codigo, y me devuelve una inserción con éxito.
Lo que pasa es que la institución necesitaba con urgencia subir información de esta tabla en la base de datos y como a la interfaz le faltaba controlarle algunos requerimientos, lo inserté manualmente via sql de esta forma:
INSERT INTO "prueba"."adm_dependencia" VALUES (1, 'ESCUELA DE INFORMATICA', 'EI', 'A', '4');
INSERT INTO "prueba"."adm_dependencia" VALUES (2, 'ESCUELA DE INGENIERIA CIVIL','EIC', 'P','4');
....
... muchos otros insert
ahora, que ya acabe la interfaz para ponerla a funcionar, me percato que a lo que hago un insert en la tabla, esta me sale el siguiente error:
"SQLSTATE[23505]: Unique violation: 7 ERROR: llave duplicada viola restriccion de unicidad \u00abpk_dependencia\u00bb"
y para asegurarme, fui al phpAdmin e inserte manualmente en la tabla, y me daba el mismo error, es decir no me quiere auto-incrementar el campo dep_codigo; pero si yo hago inserto el id del dep_codigo, ahí si lo hace.
El caso, es que no sé como hacer para que se auto-incremente el campo, creo que la funcion nextval es la que se encarga de controlar la secuencia, pero no funciona.
De antemano, mis agradecimientos.