[英]Does postgres support to set start value at serial definition?
這是一個關於使用alter
key word更改序列值的問題。 這可以在create table defintion中完成嗎? 像那樣:
CREATE TABLE tablename (
colname SERIAL stars 1000
);
你可以嘗試這個查詢。它適合我。
CREATE SEQUENCE tablename_colname_seq
INCREMENT 1
MINVALUE 1
MAXVALUE 9223372036854775807
START 1 ---> here you can mention startup nummber as you need
CACHE 1;
CREATE TABLE tablename (
colname integer NOT NULL DEFAULT nextval('tablename_colname_seq')
);
目前沒有辦法在PostgreSQL 9.x中使用PostgreSQL特定的串行類型語法在CREATE TABLE
命令中執行此操作。 但是,它使用標准化的Identity Columns語法進入PostgreSQL 10 ,請參閱我的答案
這是它的外觀
CREATE TABLE foo (
id int GENERATED { ALWAYS | BY DEFAULT }
AS IDENTITY [ ( sequence_options ) ]
);
其中(sequence_options)
是START WITH 1000
,所以這樣的事情。
CREATE TABLE foo (
foo_id int GENERATED ALWAYS AS IDENTITY (START WITH 1000)
);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.