【发布时间】:2021-01-08 23:52:56
【问题描述】:
不确定哪个选项是最新的最佳做法?我继续阅读本教程:
https://www.postgresqltutorial.com/postgresql-identity-column/
PostgreSQL 版本 10 引入了一个新的约束 GENERATED AS IDENTITY 允许您自动分配唯一编号给 列。
GENERATED AS IDENTITY 约束是符合 SQL 标准的 旧 SERIAL 列的变体。
在示例中,他们使用身份作为主键:
CREATE TABLE color (
color_id INT GENERATED ALWAYS AS IDENTITY,
color_name VARCHAR NOT NULL
);
当您按照以下方式引用此表以获取外键时:
CREATE TABLE pallet (
id INT GENERATED ALWAYS AS IDENTITY,
color_1 REFERENCES color
color_2 REFERENCES color
);
它现在会知道身份是主键吗?:
【问题讨论】:
标签: postgresql primary-key identity-column