postgresql学习

最近接触公司的一些技术

数据库用的postgresql,自然对于我这种小白自然会遇到很多坑,因为大学接触的都是mysql。

与mysql相比较大体的语法很相似,一下总结一些我开发中遇到常见的坑

postgreSQL 自增需要使用序列

1.使用SERIAL

CREATE TABLE users  
(  
id SERIAL4 primary key ,  
name character varying,  
password character varying  
)  

自动创建名为users_id_seq的序列,其起始值为1,步增为1,且MAXVALUE=2147483647, 其中serial4 创建后对应 int4, 如果是serial2 则对应为int2。实际和方法2的效果是一样的,并且不用手动创建序列。只是以前的版本可能是serial,一开始执行失败,现在发现是这一个样子的。

2.先创建序列,然后设置字段的自增

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

alter table users alter column id set default nextval('users_id_seq');  

我是采用第二种方法成功的。

猜你喜欢

转载自www.cnblogs.com/Treesir/p/11584181.html