怎么在postgresql中导入数据表并重设自增属性(postgresql,开发技术)

时间:2024-05-10 07:26:30 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

1、先删除导出的数据库表中的自增属性

怎么在postgresql中导入数据表并重设自增属性

2、导入数据库表之后,需要创建序列。

注:一般序列名称由数据表名+主键字段+seq组成 (通常情况下主键字段即为自增字段),如下表名为cof_table_hot_analysis,主键字段为 id

CREATESEQUENCEcof_table_hot_analysis_id_seqSTARTWITH1INCREMENTBY1NOMINVALUENOMAXVALUECACHE1;

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

altertablecof_table_hot_analysisaltercolumnidsetdefaultnextval('cof_table_hot_analysis_id_seq');

4、上面三步设置完之后

自增字段id默认值是1,如果需要设置自增之后的其实数值,例如16

selectsetval('cof_table_hot_analysis_id_seq',16)

5、清空表格时要重置序列新数据才会从1开始自增

TRUNCATETABLEcof_table_hot_analysisRESTARTIDENTITY

扩展:

删除序列:

DROPSEQUENCE[IFEXISTS]name[,...][CASCADE|RESTRICT]

修改序列:

ALTERSEQUENCEname[INCREMENT[BY]increment][MINVALUEminvalue|NOMINVALUE][MAXVALUEmaxvalue|NOMAXVALUE][START[WITH]start][RESTART[[WITH]restart]][CACHEcache][[NO]CYCLE][OWNEDBY{table.column|NONE}]ALTERSEQUENCEnameOWNERTOnew_ownerALTERSEQUENCEnameRENAMETOnew_nameALTERSEQUENCEnameSETSCHEMAnew_schema

补充:pgsql添加自增序列、设置表某个字段自增

添加自增序列

CREATESEQUENCE表名_id_seqSTARTWITH1INCREMENTBY1NOMINVALUENOMAXVALUECACHE1;

设置表某个字段自增

altertable表名altercolumnidsetdefaultnextval(‘表名_id_seq');

从当前最大id依次递增

selectsetval(‘表名_id_seq',(selectmax(id)from同一个表名));

大写字符的表需要加双引号。

例如:

selectsetval('“表名_id_seq”',(selectmax(id)from“表名”));
 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:怎么在postgresql中导入数据表并重设自增属性的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:小程序如何获取token值下一篇:

8 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18