postgresql導入數據庫表並重設自增屬性

postgresql使用Navicat軟件導出數據庫表,在導入會數據庫的操作。postgresql 的自增字段 是通過 序列 sequence來實現的。
1、先刪除導出的數據庫表中的自增屬性

2、導入數據庫表之後,需要創建序列。

注:一般序列名稱由數據表名+主鍵字段+seq組成  (通常情況下主鍵字段即爲自增字段),如下表名爲cof_table_hot_analysis,主鍵字段爲 id

CREATE SEQUENCE cof_table_hot_analysis_id_seq
    START WITH 1
    INCREMENT BY 1
    NO MINVALUE
    NO MAXVALUE
    CACHE 1;

3、設置表字段(id)自增sql

alter table cof_table_hot_analysis alter column id set default nextval('cof_table_hot_analysis _id_seq ');

4、上面三步設置完之後自增字段id默認值是1,如果需要設置自增之後的其實數值,例如16

select setval('cof_table_hot_analysis_id_seq', 16)

5、清空表格時要重置序列新數據纔會從1開始自增

TRUNCATE TABLE cof_table_hot_analysis RESTART IDENTITY

擴展:

刪除序列:

DROP SEQUENCE [ IF EXISTS ] name [, ...] [ CASCADE | RESTRICT ]

修改序列:

ALTER SEQUENCE name [ INCREMENT [ BY ] increment ]
    [ MINVALUE minvalue | NO MINVALUE ] [ MAXVALUE maxvalue | NO MAXVALUE ]
    [ START [ WITH ] start ]
    [ RESTART [ [ WITH ] restart ] ]
    [ CACHE cache ] [ [ NO ] CYCLE ]
    [ OWNED BY { table.column | NONE } ]
ALTER SEQUENCE name OWNER TO new_owner
ALTER SEQUENCE name RENAME TO new_name
ALTER SEQUENCE name SET SCHEMA new_schema

 

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