mysql添加完整性约束

更新时间:02-03 教程 由 挽木琴 分享

MySQL是一种关系型数据库管理系统,允许用户在数据库表中添加完整性约束。数据完整性是指确保数据的准确性、适当性和一致性。在MySQL中,完整性约束是通过在表中定义规则来实现的。

MySQL支持以下类型的完整性约束:

主键约束唯一约束外键约束检查约束

下面将以学生表为例演示如何在MySQL中添加完整性约束。

CREATE TABLE students (id INT PRIMARY KEY,name VARCHAR(50) NOT NULL,age INT NOT NULL,gender VARCHAR(10),major VARCHAR(50),phone VARCHAR(20) UNIQUE,email VARCHAR(50) UNIQUE,foreign key (major) references majors(name));

以上示例中,我们定义了students表,其中包含了id、name、age、gender、major、phone和email列。通过使用PRIMARY KEY关键词我们定义了id列为主键列。主键列的值在表中必须唯一且不能为空。

我们还使用UNIQUE关键词在phone和email列上定义了唯一约束。唯一约束要求列中的每个值都必须唯一,这意味着在表中不允许有重复的值。

外键约束指定一个或多个列的值必须符合另一个表中的值。在学生表中,我们使用foreign key关键字将major列设置为外键列,并将其映射到majors表中的name列。这表示students表中的major值必须是majors表中的一个有效值。如果尝试插入一个majors表中不存在的值,则会出现外键约束错误。

最后,我们可以使用CHECK约束在表中定义各种需要的约束条件。例如,我们可以使用CHECK约束限制age列的最小和最大值:

CREATE TABLE students (id INT PRIMARY KEY,name VARCHAR(50) NOT NULL,age INT NOT NULL CHECK (age >= 18 AND age<= 60),...);

以上示例限制了age值必须在18到60岁之间。

在MySQL中添加完整性约束非常容易,只需在CREATE TABLE语句中使用相应的关键字即可。这可以确保在插入或更新表中的数据时,只允许合法的值出现。

声明:关于《mysql添加完整性约束》以上内容仅供参考,若您的权利被侵害,请联系13825271@qq.com
本文网址:http://www.25820.com/tutorial/14_2072517.html