NOT NULL约束
NOT NULL 约束确保字段中始终存在值。换句话说,它不允许字段中存储NULL值。
作用:保证字段的每一行都有一个值,确保数据的完整性。
用法:在创建表时,通过字段定义后加上 NOT NULL 关键字来实现。
CREATE TABLE example (
id IN...
在MySQL数据库中,约束是保证数据完整性和一致性的重要机制。通过定义约束,我们可以限制表中数据的类型和取值范围,防止无效数据的插入或更新。接下来,我们将详细探讨MySQL中常见的几种约束以及它们的作用和用法。
- NOT NULL约束
NOT NULL 约束确保字段中始终存在值。换句话说,它不允许字段中存储NULL值。
作用:保证字段的每一行都有一个值,确保数据的完整性。
用法:在创建表时,通过字段定义后加上 NOT NULL
关键字来实现。
CREATE TABLE example (
id INT PRIMARY KEY,
name VARCHAR(50) NOT NULL
);
- UNIQUE约束
UNIQUE 约束确保表中所有行的某列或多列组合具有唯一值。
作用:防止在列中插入重复的值,确保数据的唯一性。
用法:在创建表时,通过字段定义后加上 UNIQUE
关键字来实现,或者通过 CREATE UNIQUE INDEX
语句来创建唯一索引。
CREATE TABLE example (
id INT PRIMARY KEY,
email VARCHAR(100) UNIQUE
);
- PRIMARY KEY约束
PRIMARY KEY 约束唯一标识数据库表中的每条记录。主键必须包含唯一值,并且不能包含NULL值。
作用:唯一标识表中的每一行记录,是数据库表的一个重要属性。
用法:在创建表时,通过字段定义后加上 PRIMARY KEY
关键字来实现。
CREATE TABLE example (
id INT PRIMARY KEY,
name VARCHAR(50)
);
- FOREIGN KEY约束
FOREIGN KEY 约束用于确保一个表中的数据匹配另一个表中的数据的引用完整性。
作用:保持数据之间的引用完整性,防止无效的数据操作。
用法:在创建表时,通过字段定义后加上 FOREIGN KEY
关键字,并指定引用表的名称和列名来实现。
CREATE TABLE orders (
order_id INT PRIMARY KEY,
customer_id INT,
FOREIGN KEY (customer_id) REFERENCES customers(id)
);

通过合理使用这些约束,我们可以构建更加健壮、数据完整性和一致性得到保障的数据库系统。