postgresql 取下一個自動插入的序列號值

以下方式只適用於SERIAL類型的字段

注意自動創建的 SEQUENCE 對象的名稱將會是 <table>_<serialcolumn>_seq, 這裏 table 和 serialcolumn 分別是你的表的名稱和你的 SERIAL 字段的名稱。

一種方法是在插入之前先用函數 nextval() 從序列對象裏檢索出下一個 SERIAL 值,然後再顯式插入。

SELECT nextval('person_id_seq')

相反,在 SERIAL 對象缺省插入後你可以用函數 currval() 檢索剛賦值的 SERIAL 值例如:

SELECT currval('person_id_seq')

使用 currval() 不會導致和其他用戶的衝突情況,因爲currval() 返回的是你本次會話進程所賦的值而不是所有用戶的當前值。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章