MYSQL表的约束
2022/1/12 2:34:12
本文主要是介绍MYSQL表的约束,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一.什么是约束
在创建表的时候,给表中的字段数据加上一点条件。
二.表的四种约束
1.非空约束
非空约束是让表的字段不能为空。
举例实现:
create table students( id int; name varchar(20) not null );
创建表时在字段的数据类型后加not null,来限制该字段的值不能为空。若该表插入信息name为空则会报错。
2.唯一性约束
唯一性约束是让表的字段的值不会重复。(null可以重复)
(1)当一个字段具有唯一性时
举例说明:
create table students( id int unique; name varchar(20) );
创建表时在字段的数据类型后加unique,来限制该字段得值不会重复。若插入id的值已经存在(null除外),则会报错。
(2)当两个字段联合起来具有唯一性时
举例实现:
create table students( id int ; name varchar(20) ; unique(id,name) );
创建表时加入unique(字段名,字段名),来限制该两个字段的值联合唯一。若插入id和name的值与已存在某条数据的id和name相同(null除外),则会报错。
3.主键约束
主键约束是让表的某个字段作为主键字段,主键字段不能为空不能重复。
(1)一个字段做主键(单一主键)
举例实现:
create table students( id int primary key; name varchar(20) );
创建表时在字段的数据类型后加primary key,把该字段设置为主键。
(2)两个字段联合起来做主键(复合主键)
举例实现:
create table students( id int; name varchar(20); primary key(id,name) );
创建表时加primary key(字段名,字段名),两个字段联合设置为主键。(不建议用复合主键)
4.外键约束
外键约束是让一个表的某个字段作为外键字段,该外键字段受到外键约束,外键约束是外键值在另一个表中的某字段的值中存在。
举例实现:
create table class( classno int; classname varchar(255) ); create table students( id int primary key; name varchar(255); cn int; foreign key(cn) references class(classno) );
创建表时加foreign key(字段名) references class(字段名),实现外键约束。student表中的cn字段是外键字段,受到外键约束,cn的外键值只能是class表中classno字段中存在的值。若添加时cn字段的值不是是class表中classno字段中存在的值,则会报错。
这篇关于MYSQL表的约束的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16MySQL资料:新手入门教程
- 2024-11-16MySQL资料:新手入门教程
- 2024-11-15MySQL教程:初学者必备的MySQL数据库入门指南
- 2024-11-15MySQL教程:初学者必看的MySQL入门指南
- 2024-11-04部署MySQL集群项目实战:新手入门教程
- 2024-11-04如何部署MySQL集群资料:新手入门指南
- 2024-11-02MySQL集群项目实战:新手入门指南
- 2024-11-02初学者指南:部署MySQL集群资料
- 2024-11-01部署MySQL集群教程:新手入门指南
- 2024-11-01如何部署MySQL集群:新手入门教程