非空约束和唯一约束

非空约束:

我们先来讲一下非空约束是什么意思,他是什么,首先非空大家应该都知道吧

所谓非空的意思顾名思义就是这个字段不能是空的,得又数据,约束什么呢?

约束就是我们指定这一个字段不能为空的数据,必须得是有数据的字段,约束就是

我们约束这一个字段,就比如我们生活中的例子吧,比如有一天你生病了上火了

吃饭的时候有两种口味一种是辣的,一种是不辣的,你平时很爱吃啦,可是今天

你生病了上火了,是不是就只能吃不辣的了,因为你生病了,因为生病这个原因

导致你只能吃不辣的,如果你非要吃啦,那你病情就更严重了,所以因为病情

约束了你,你只能吃不辣的了,约束就是这个意思

非空约束:

概念︰对表中的数据进行限定,保证数据的正确性、有效性和完整性。

分类:

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;

 

posted @ 2022-10-13 11:15  冰灵IT  阅读(361)  评论(0)    收藏  举报