【MySQL】一文带你了解数据库约束
数据库的约束是在表级别实施的规则,用于确保数据的完整性和一致性。MySQL中常见的约束包括:
- PRIMARY KEY(主键):保证记录的唯一性,不能为NULL。
- UNIQUE KEY(唯一键):保证记录的字段的值是唯一的,即不能有重复值。
- FOREIGN KEY(外键):保证一个表中的数据与另一个表的数据相关联。
- NOT NULL(非空):保证字段不能有NULL值。
- DEFAULT(默认值):当插入记录时,未指定字段的值,则会使用默认值。
- INDEX(索引):提高查询速度。
创建表时添加约束的示例代码:
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL UNIQUE,
email VARCHAR(100) NOT NULL,
age INT NOT NULL,
country_code CHAR(2) NOT NULL DEFAULT 'US',
FOREIGN KEY (country_code) REFERENCES countries(code)
);
在上述代码中,users
表设置了多个约束:
id
列设置为自增长的主键。username
列设置为唯一,保证每个用户名不同。email
、age
和country_code
列被设置为NOT NULL,保证这些字段不会有NULL值。country_code
列作为外键指向countries
表的code
列,确保用户的国家代码在countries
表中有对应的记录。country_code
列设置了默认值为'US'。
通过这个示例,开发者可以了解到如何在创建表时定义各种约束,以及约束是如何保证数据的完整性和一致性的。
评论已关闭