怎么在postgresql中导入数据表并重设自增属性
导读:本文共1280.5字符,通常情况下阅读需要4分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 1、先删除导出的数据库表中的自增属性2、导入数据库表之后,需要创建序列。注:一般序列名称由数据表名+主键字段+seq组成 (通常情况下主键字段即为自增字段),如下表名为cof_table_hot_analysis,主键字段为 idCREATESEQUENCEcof_table_hot_analysis_id_seqSTARTWITH1INCREMENTBY1... ...
音频解说
目录
(为您整理了一些要点),点击可以直达。1、先删除导出的数据库表中的自增属性
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中导入数据表并重设自增属性的详细内容,希望对您有所帮助,信息来源于网络。