2,mysql建表约束

2021/8/6 19:06:39

本文主要是介绍2,mysql建表约束,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

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

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

Create table user(

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

Name varchar(20)

);

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

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

 

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

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

 

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

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

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

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

Desc是describe的简写

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

5,删除主键

输入alter table 表名 drop primary key;

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

 

 

7,唯一约束

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

添加唯一约束,三种方式

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

 

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

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

 (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不允许

 

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

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

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

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

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

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

10,外键约束

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

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

 

 

 

 

 

 



这篇关于2,mysql建表约束的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程