MySQL数据库数据库的约束

目录

一、数据库约束

二、NOT NULL约束

三、UNIQUE约束

四、DEFAULT约束

五、PRIMARY KEY主键约束

 六、FOREIGN KEY外键约束



 

一、数据库约束

数据库约束是对数据库里的记录做出更详细的检查

数据库约束类型

NOT NULL指某列不能存储null值
UNIQUE指保证每列的值在数据中是唯一的
DEFAULT规定给没有赋值的列赋默认值
PRIMARY KEY主键约束,也就是NOT NULL与UNIQUE的结合
FOREIGN KEY外键约束
CHECK保证列中的值符合条件

二、NOT NULL约束

语法:create table 表名(列 数据类型 not null); 

创建好表后,有not null约束的列不可以赋值为null

三、UNIQUE约束

语法:create table 表名(列 数据类型 unique); 

值唯一,每次插入时会检测是不是唯一值,每次都是先检测再插入,使用unique约束时,数据库会自动给对应列创建索引

四、DEFAULT约束

语法:create table 表名(列 数据类型 default 默认值);

 插入数据时如果未插入,就会赋值为默认值

五、PRIMARY KEY主键约束

 create  table 表名(列 数据类型 primary key); 

主键是不可空且唯一的,比如名字不能作为主键,身份证则可以作为主键,一个表里只能有一个主键

 

 

自增主键:对于整数类型的主键常常搭配auto_increment时使用,插入字段不给值时,会使用最大值+1 

 六、FOREIGN KEY外键约束

语法:create table 表名(foreign key(当前表的列) references 另一个表(另一个表里的列));

 首先创建一个班级表,用来记录班级号跟老师

 然后创建一个学生表

插入数据

 当学生表里插入数据时,class列插入的记录,必须在班级表对应列的记录里存在,这个时候班级表就对学生表产生了约束,此时学生表叫子表,班级表叫父表,父表中与子表构成外键的列必须由primary key或者unique约束

 在父表约束子表的同时,子表也对父表有影响。如果使用drop删除父表时会出错

 删除父表某条记录时,要看子表的记录是否引用了该记录里的列

 修改父表与子表形成的列数据时,如果该记录也被子表引用,也会出错

 

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

1886i

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值