加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL中常见的约束类别是什么

发布时间:2022-01-15 16:33:57 所属栏目:MySql教程 来源:互联网
导读:这篇文章给大家分享的是有关MySQL中常见的约束类型是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 约束的字面意思就是规定或者限制某个事该如何去做,在MySQL中,约束就是对数据表中数据指定规则,也就是对数据进行限
       这篇文章给大家分享的是有关MySQL中常见的约束类型是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
 
 
     约束的字面意思就是规定或者限制某个事该如何去做,在MySQL中,约束就是对数据表中数据指定规则,也就是对数据进行限制,以此来确保可靠性,比如不允许某列出现Null值,实际中我们会遇到以下类型的约束。
 
NOT NULL : 确保列不能有NULL值
CHECK : 确保列中的值满足特定条件
UNIQUE : 确保一列中的所有值都不同
PRIMARY KEY: NOT NULL和UNIQUE组合,唯一标识表中的每一行
FOREIGN KEY : 外键约束
DEFAULT : 如果未指定值,则为列设置默认值
约束
1.NULL
MySQL中通过使用NOT NULL确保列中不会出现Null值,创建表时候格式如下:
 
mysql> create table user(name varchar(255)not null);
Query OK, 0 rows affected (0.06 sec)
如果试图插入一个null值,则会抛出异常。
 
mysql> insert user values(null);
ERROR 1048 (23000): Column 'name' cannot be null
或者在现有表上新增NOT NULL约束。
  
mysql> create table user(age int(11) check(age>18 and age <80));
Query OK, 0 rows affected, 1 warning (0.06 sec)
插入测试,可以发现9、81在插入的时候抛出异常。
 
mysql> insert user values(9);
ERROR 3819 (HY000): Check constraint 'user_chk_1' is violated.
 
mysql> insert user values(19);
Query OK, 1 row affected (0.01 sec)
 
mysql> insert user values(81);
ERROR 3819 (HY000): Check constraint 'user_chk_1' is violated.
mysql>
也可以进行多列约束,如年龄必须大于18,城市必须为中国。

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读