码迷,mamicode.com
首页 > 数据库 > 详细

MySQL-约束

时间:2020-05-19 16:37:40      阅读:92      评论:0      收藏:0      [点我收藏+]

标签:唯一性   数位   字段   语法   rem   table   指定   数据表   col   

1.非空约束

.NULL,字段值可以为空;
.NOT NULL,字段值禁止为空。
用于指定字段是否可以为空,语法:
CREATE TABLE tbl_name (
column_name data_type NULL/NOT NULL,
...
}
说明:默认是NULL,可以为空。

2.主键约束PRIMARY KEY

.每张数据表只能存在一个主键;
.主键保证记录的唯一性;
.主键自动为NOT NULL
.AUTO_INCREMENT必须与主键一起使用,但主键没有要求一定要AUTO_INCREMENT.
语法:
CREATE TABLE tbl_name(
id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,----注意:只能是int型或float型,小数位数为0;且不需要给id赋值。
...
);

3.唯一约束UNIQUE KEY

.可以保证记录的唯一性
.唯一约束的字段可以为NULL(与主键区别)
.每张数据表可以存在多个唯一约束(与主键区别)
延伸理解:唯一约束字段可以多个为NULL,如何保证记录的唯一性?实际在存储时只有一个为空,所以仍能保证记录唯一性。
语法:
CREATE TABLE tbl_name(
column_name data_type UNIQUE KEY,
...
);

4.默认约束DEFAULT

即当插入记录时,如果没有明确为字段赋值,则自动赋予默认值。
语法:
CREATE TABLE tbl_name(
column_name data_type DEFAULT val,----注意DEFAULT可以与ENUM类型值进行结合使用,DEAFULT可以指定其中的值。
...
);

5.约束与索引区别

约束:为了保证数据完整性为目的;
索引:快速定位特定数据,提高查询效率,确保数据唯一性。

MySQL-约束

标签:唯一性   数位   字段   语法   rem   table   指定   数据表   col   

原文地址:https://www.cnblogs.com/dLarger/p/12917584.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!