2012-08-08 15 views
32

¿Cómo invocar la secuencia postgresql al insertar una nueva fila en una tabla?cómo invocar la secuencia al insertar un nuevo registro en la tabla postgresql?

quiero hacer algo como esto

insert into biz_term(
    biz_term_id, 
    biz_term_name, 
) 
values(SELECT nextval(idsequence)', 
'temp' 


); 

Cómo hacer esto alguna idea? Quiero hacerlo porque cuando intento insertar un nuevo registro en la tabla biz_term, la secuencia -idsecuencia no se invoca directamente ... ¿alguna solución?

Respuesta

62

Lo tienes casi. No es necesario el SELECT allí:

insert into biz_term(
    biz_term_id, 
    biz_term_name, 
) 
values(
nextval('idsequence'), 
'temp' 
); 

Cualquier razones por las que no especificó el biz_term_id como serial (o bigserial) que se ocupa de que automáticamente para usted?

Cuestiones relacionadas