postgresql 创建主键自增的三种方法
在PostgreSQL中,创建一个自增主键的方法通常涉及到使用序列(SEQUENCE)和自增操作符(通常是SERIAL
或BIGSERIAL
,对应于INTEGER
和BIGINT
数据类型)。以下是三种创建自增主键的方法:
- 使用
SERIAL
关键字:
CREATE TABLE example_table (
id SERIAL PRIMARY KEY,
column1 TYPE,
column2 TYPE
-- 其他列定义
);
- 使用
CREATE SEQUENCE
和NEXTVAL
:
CREATE SEQUENCE example_table_id_seq;
CREATE TABLE example_table (
id INTEGER PRIMARY KEY DEFAULT nextval('example_table_id_seq'),
column1 TYPE,
column2 TYPE
-- 其他列定义
);
ALTER SEQUENCE example_table_id_seq OWNED BY example_table.id;
- 使用
IDENTITY
关键字(PostgreSQL 10及以上版本):
CREATE TABLE example_table (
id SERIAL PRIMARY KEY,
column1 TYPE,
column2 TYPE
-- 其他列定义
WITH (
OIDS = FALSE
);
请注意,第一种和第三种方法是在创建表的时候直接定义自增主键,第二种方法是先创建序列,然后在创建表的时候将序列作为默认值。在实际应用中,选择哪种方法取决于具体的需求和偏好。
评论已关闭