【MySQL】:约束全解析
在MySQL中,约束是用来保证数据完整性的规则。常见的约束包括:
- PRIMARY KEY (PK):标识该字段为表的主键,可以唯一标识表中的每一行,不能有NULL值,不能有重复值。
- NOT NULL:标识该字段不能有NULL值。
- UNIQUE:标识该字段的值是唯一的,不能有重复值。
- FOREIGN KEY (FK):标识该字段为表的外键,用于和其他表的主键建立联系,保证数据的一致性和完整性。
- CHECK:用于检查字段值是否满足某个条件。
- DEFAULT:为字段设置默认值。
举例创建表时使用约束:
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL UNIQUE,
email VARCHAR(100) NOT NULL,
age INT NOT NULL CHECK (age > 0 AND age < 120),
country_code CHAR(2) NOT NULL DEFAULT 'US',
FOREIGN KEY (country_code) REFERENCES countries (code)
);
在这个例子中,users
表定义了几个约束:
id
是主键。username
是唯一的,不允许有重复值。email
,age
,country_code
不允许为NULL。age
设置了检查约束,确保年龄在(0, 120)区间内。country_code
设置了默认值为'US'。country_code
是外键,参照countries
表的code
字段,保持数据的一致性。
评论已关闭