Mysql

关注公众号 jb51net

关闭
首页 > 数据库 > Mysql > Mysql约束条件

Mysql数据库之约束条件详解

作者:_BooI

本文介绍了数据库表中的主键约束、非空约束、唯一约束、默认值约束和外键约束,并举例说明了如何在创建表和修改表时设置这些约束

一、主键约束

主键约束(PRIMARY KEY constraint)用于唯一标识数据库表中的每条记录。

语法:

create table 表名 (
列名1 数据类型 primary key,
列名2 数据类型,
...
);

在主键的后面添加:auto_increment, 可以让主键自增。

设置auto_increment之后,可以不用设置id, id会自增。

创建表之后再创建主键的语法:alter table 表名 add primary key (列名1, 列名2, ...);

二、非空约束

非空约束是一种数据库约束,用于确保表中的某个列不接受空值。当为表的某个列定义了非空约束后,插入或更新该列时,必须提供非空的值。

语法:

create table 表名 (
列名 数据类型 not null,
...
);

创建表之后再设置非空的语法:alter table 表名 modify 列名 数据类型 not null;

三、唯一约束

唯一约束是一种数据库约束,用于确保表中的某个列或一组列的值是唯一的,即不允许重复值。唯一约束是一种数据完整性措施,它可以保证数据的唯一性和一致性。

语法:

create table 表名 (
列名2 数据类型 unique,
...
);

在创建好的表中添加唯一约束:alter table 表名 add constraint 约束名 unique (列名1, 列名2, ...);

四、默认值约束

默认值约束是一种数据库约束,用于在插入数据时,如果未显式为列指定值,则自动使用指定的默认值,是一种数据完整性措施,它确保了在缺少显式值的情况下,表中的列始终具有默认值。

语法:

Create table 表名 (
列名1 数据类型 default 默认值,
列名2 数据类型 default 默认值,
...
);

在创建好的表中添加默认值约束:alter table 表名 alter colum 列名 set default 默认值;

五、外键约束

外键约束是一种数据库约束,用于在相关表之间建立关联关系,保持数据的完整性和一致性。

外键约束可以确保在一个表中的列值必须在另一个表中存在。

语法:

Create table 表名 (
列名1 数据类型,
列名2 数据类型,
...
foreign key (列名) references 关联表名(关联列名)
);

例:作者和文章的关系是:1:N, 外键存在多的一方,所以外键设在文章表, 所以先创建作者表。

创建作者表:

创建文章表,并设置外键:

在创建好的表中添加外键约束(约束名自己命名):

alter table 表名 add constraint 约束名 foreign key (列名) references 关联表名(关联列名);

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文