PostgreSQL如何设置自增主键ID

使用navicat创建postgresql数据库的表时如何设定主键自增?

我们知道,在navicat中MySQL 里面有auto_increment 自增字段PostgreSQL
没有自增字段这一说法,但是有单独的对象:序列。 可以用序列或者其他方法来是实现这样的语法。或者设置某一列的默认值为sequence的值即可

在MySQL当中,我们可以通过勾选来实现ID自增,我们的navcat如下图所示:
  `area_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
 
image
在PostgreSQL当中,我们的navcat如下图所示
 
image

在PostgreSQL当中,我们实现ID自增首先创建一个关联序列序列

打开navcat查询列表,去创建一个序列

CREATE SEQUENCE upms_log_id_seq START 10;

 
image.gif

然后在字段默认值里设 nextval(' upms_log_id_seq')即可。

 
image

实际生成自增主键表结构

"area_id" int4 NOT NULL DEFAULT nextval('upms_area_id_seq'::regclass),
 
image

)

1 -- 序列重置到1000
2 alter sequence sequence_name restart with 1000
3 -- 验证 
4 SELECT nextval('sequence_name');



作者:摘星族
链接:https://www.jianshu.com/p/9687c9e66cec
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

原文地址:https://www.cnblogs.com/silentmuh/p/13603220.html