2012-08-08 28 views
32

Làm thế nào để gọi trình tự postgresql trong khi chèn hàng mới vào một bảng?cách gọi trình tự trong khi chèn bản ghi mới vào bảng postgresql?

tôi muốn làm một cái gì đó như thế này

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


); 

Làm thế nào để làm điều này bất kỳ ý tưởng? Tôi muốn làm điều đó bởi vì khi tôi đang cố gắng để chèn kỷ lục mới vào bảng biz_term sau đó trình tự-kết quả là không nhận được gọi trực tiếp ... giải pháp?

Trả lời

62

Bạn nhận được nó gần như. Bạn không cần phải SELECT trong đó:

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

Bất kỳ lý do bạn không nói rõ biz_term_id như serial (hoặc bigserial) mà xử lý tự động cho bạn?

Các vấn đề liên quan