Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/12/2008, 05:02
jlgarcia1977
 
Fecha de Ingreso: octubre-2008
Ubicación: Madrid
Mensajes: 352
Antigüedad: 15 años, 5 meses
Puntos: 5
Problemas con secuencias.

He creado una secuencia:

REATE SEQUENCE candidato_id_seq
INCREMENT 1
MINVALUE 1
MAXVALUE 9223372036854775807
START 1
CACHE 1;
ALTER TABLE candidato_id_seq OWNER TO postgres;

En mi tabla Candidatos he agregado un campo que sera auto incremental:

ALTER TABLE candidatos ADD COLUMN id integer;
ALTER TABLE candidatos ALTER COLUMN id SET STORAGE PLAIN;
ALTER TABLE candidatos ALTER COLUMN id SET NOT NULL;
ALTER TABLE candidatos ALTER COLUMN id SET DEFAULT nextval('candidato_id_seq'::regclass);

¿Si quiero hacer un insert que pongo en el campo 'id'? lo dejo vacio, o meto un 1, porque me da error todo el rato, quiero que me coja el valor siguiente de la secuencia.

Si tengo por ejemplo las columnas id,nombre,sexo,edad,telefono,fechaAlta,puesto,entr evistaro...
Hago el siguiente insert:

insert into candidatos values (1,'Jose Luis','H',31,916664422,TO_DATE('12/12/2007','DDMMYYYY'),'programador','Merceces')

Y claro me dice que el valor ya existe(por el 1 la primera columna), en otra BBDD te daba el que tocaba poniendo un 1 pero aqui no se que debo poner en ese campo.

Un saludo y gracias.