2,mysql建表约束

mysql建表约束:主键约束、自增约束、外键约束、唯一约束、非空约束、默认约束

1,约束:它够唯一确定一张表中的记录,也就是通过给某个字段添加约束,就是的该字段不重复,且不为空。

Create table user(

Id int primary key,                 约束了主键,不能添加重复

Name varchar(20)

);

在test数据库中创建表,创建表user,插入主键,显示表,其中id的key一栏是PRI证明id是主键

2,mysql建表约束

主键是唯一的,不能重复添加,如果还想添加重复的只能改变前面的序号

2,mysql建表约束

 2,mysql建表约束

 主键还有一个条件就是不能为空,目的就是为了重新确认一下记录

2,mysql建表约束

2,联合主键——只要联合的主键值加起来不重复就可以,但是都不能为空

 2,mysql建表约束

3,自增约束和主键约束搭配使用

创建一个表格,直接添加数值前面的id,管控id的值,让它可以自动增长

2,mysql建表约束

 4,修改表结构,添加主键

如果创建表的时候,忘记创建主键约束,就是primary key 显示,key那一列为空

Desc是describe的简写

2,mysql建表约束

 解决办法,输入alter table 表名 add primary key(id)

2,mysql建表约束

5,删除主键

输入alter table 表名 drop primary key;

2,mysql建表约束

6,使用modify修改字段,添加约束

 2,mysql建表约束

 

7,唯一约束

约束修饰的字段的值不能重复

2,mysql建表约束

添加唯一约束,三种方式

(1)alter table user5 add unique(name);

2,mysql建表约束

 2,mysql建表约束

UNI的意思就是name不可以重复

2,mysql建表约束

 (2)也可以直接创建唯一约束

2,mysql建表约束

 (3)也可以直接写到name后面:name varchar(20)unique

unique写一行的原因是可以添加不止一个元素,如果有多个唯一约束unique(id,name)表示两个键在一起都不重复

(4)通过modeify去添加,添加之前需要先删除

如何去删除唯一约束:alter table user6 drop index name;

通过modify添加:alter table user6 modify name varchar(20) unique;

总结(添加约束):

  1. 建表的时候就添加约束
  2. 可以使用alter ...add....
  3. 也可以使用alter...modify...
  4. 删除使用alter...drop...

8,非空约束——就是修饰的字段不能为空

id在NULL就是YES允许,name在NULL是no不允许

2,mysql建表约束

2,mysql建表约束 

可以让id为空直接赋值lisi就是正确的,但是不能让name为空,不然出现错误

Not null的添加就是让它自己修饰的键不能为空

9,默认约束——当我们插入字段值的时候,如果没有传值,就会使用默认值

2,mysql建表约束

 给age默认是10所以她现在是有默认值的为10

现在给id,name插入相应的值,不管age,显示出来age还是默认的值10

2,mysql建表约束

2,mysql建表约束

 如果给age进行赋值就不会使用原来的值的

2,mysql建表约束

10,外键约束

涉及到两个表:父表,子表(主表、副表)

创建一个班级表,和一个学生表,主表是班级表,在给两个表中分别插入信息

 2,mysql建表约束

2,mysql建表约束 

 

 

 

 

上一篇:MySql 修改删除表


下一篇:mysql增删改查命令