PostgreSQL 约束
在数据库设计中,约束(Constraint)是一种规则,用于确保数据库中的数据满足特定的条件。PostgreSQL 作为一款功能强大的开源关系型数据库管理系统,提供了多种约束类型,以帮助开发者维护数据的一致性和准确性。本文将详细介绍 PostgreSQL 中常见的约束类型及其使用方法。
1. 主键约束(Primary Key)
主键约束用于保证表中每一行数据的唯一性。在 PostgreSQL 中,一张表只能有一个主键。主键约束不仅保证了数据的唯一性,还可以作为其他表的外键关联。
CREATE TABLE IF NOT EXISTS users (id SERIAL PRIMARY KEY,username VARCHAR(50) NOT NULL,email VARCHAR(100) NOT NULL UNIQUE
);
在上面的示例中,id
字段被设置为表的主键,同时 username
和 email
字段被设置为非空(NOT NULL)和唯一(UNIQUE)约束。
2. 外键约束(Foreign Key)
外键约束用于在两个表之间建立关系。当一张表中的字段作为另一张表的主键时,该字段就成为了外键。外键约束可以保证数据的一致性,防止删除或更新操作破坏表之间的关系。
CREATE TABLE IF NOT EXISTS orders (id SERIAL PRIMARY KEY,user_id INTEGER NOT NULL,pr