非空约束:
我们先来讲一下非空约束是什么意思,他是什么,首先非空大家应该都知道吧
所谓非空的意思顾名思义就是这个字段不能是空的,得又数据,约束什么呢?
约束就是我们指定这一个字段不能为空的数据,必须得是有数据的字段,约束就是
我们约束这一个字段,就比如我们生活中的例子吧,比如有一天你生病了上火了
吃饭的时候有两种口味一种是辣的,一种是不辣的,你平时很爱吃啦,可是今天
你生病了上火了,是不是就只能吃不辣的了,因为你生病了,因为生病这个原因
导致你只能吃不辣的,如果你非要吃啦,那你病情就更严重了,所以因为病情
约束了你,你只能吃不辣的了,约束就是这个意思
非空约束:
概念︰对表中的数据进行限定,保证数据的正确性、有效性和完整性。
分类:
1.主键约束: primary key
2.非空约束:not null
3.唯一约束:unique
4.外键约束:foreign key
非空约束:not null
1.创建表时添加约束
CREATE TABLE stu(
id INT,
NAME VARCHAR( 20)NOT NULL -- name为非空);
2.创建表完后,添加非空约束
ALTER TABLE stu MODIFY NAME VARCHAR(20) NOT NULL;
3.删除name的非空约束
ALTER TABLE stu MODIFY NAME VARCHAR(20);
唯一约束:
唯一约束是什么意思呢?首先我们先看唯一是什么意思,大家应该都知道唯一是什么意思吧
唯一呢所谓就是这一字段的每个数据都只能是唯一的,就是不能出现重复的数据,比如这一字段
里出现过111了,还能再出现111吗?答案肯定是不能的,因为我们给这个字段设置了唯一约束,所以
所有的数据都只能出现一次,不能出现重复的,如果你非要写重复的数据,当你保存后会发现保存不了
它会给你一个报错的信息,报错的信息是出现过重复的数据了,因为我们给这个字段设置了唯一约束,
所以会报错,这就是唯一约束
唯一约束: unique,值不能重复
1.创建表时,添加唯一约束
CREATE TABLE stu(
id INT,
phone_number VARCHAR(20) UNIQUE --添加了唯一约束);
注意mysq1中,唯一约束限定的列的值可以有多个null
2.删除唯一约束
ALTER TABLE stu DROP INDEX phone_number;
3.在创建表后,添加唯一约束
ALTER TABLE stu MODIFY phone_number VARCHAR(20) UNIQUE;
标签:非空,20,唯一,stu,TABLE,约束 From: https://www.cnblogs.com/hungui/p/16787525.html