是否可以加唯一约束 有空_MySQL:约束—实体完整性约束

学习笔记

MySQL

2020年12月12日

实体完整性约束

主键约束、唯一约束、自动增长列

表中的一行数据代表一个实体(entity),实体完整性的作用即标识每一行数据不重复,实体唯一。

01

主键约束

语法:PRIMARY KEY (唯一,标识表中的一行数据,此列的值不可重复,且不能为NULL)

#创建subject表(subjectid主键)

CREATE TABLE `subject`(

subjectid INT PRIMARY KEY,

subjectname VARCHAR(10),

subjecthours INT

);

#添加数据

INSERT INTO `subject`(subjectid,subjectname,subjecthours)

VALUES(2,'java',2);

02

唯一约束

语法:UNIQUE(唯一,标识表中的一行数据,不可重复,可以为null)

#创建subject表(subjectid主键、subjectname唯一)

CREATE TABLE `subject`(

subjectid INT PRIMARY KEY,

subjectname VARCHAR(10) UNIQUE,

subjecthours INT

);

#添加数据

INSERT INTO `subject`(subjectid,subjectname,subjecthours)

VALUES(1,'java',2);

#error:subjectname非唯一

INSERT INTO `subject`(subjectid,subjectname,subjecthours)

VALUES(2,'java',2);#error课程名称已存在

03

自动增长列

语法:AUTO_INCREMENT(自动增长,给主键数值添加自动增长,从1开始,每次加1,不能单独使用,和主键配合)

为表中主键添加自动增长,避免忘记主键ID序号

#创建subject表(subjectid主键自动增长、subjectname唯一)

CREATE TABLE `subject`(

subjectid INT PRIMARY KEY AUTO_INCREMENT,

subjectname VARCHAR(10) UNIQUE,

subjecthours INT

);

#添加数据

INSERT INTO `subject`(subjectname,subjecthours)

VALUES('java',2);

INSERT INTO `subject`(subjectname,subjecthours)

VALUES('sql',2);

INSERT INTO `subject`(subjectname,subjecthours)

VALUES('PYTHON',2);

注意:自动增长数据类型需为INT。

END

以上笔记根据千锋教育CAVINT老师课程整理所得

北落

念念不忘,必有回响

25da7df70162ca2850c99236c22880ce.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值