一、唯一约束
### --- 唯一约束的特点: 表中的某一列的值不能重复( 对null不做唯一的判断 )
~~~ # 语法格式
字段名 字段值 unique
### --- 添加唯一约束
~~~ # 创建emp3表 为ename 字段添加唯一约束
CREATE TABLE emp3(
eid INT PRIMARY KEY AUTO_INCREMENT,
ename VARCHAR(20) UNIQUE,
sex CHAR(1)
);
### --- 测试唯一约束
-- 测试唯一约束 添加一条数据
INSERT INTO emp3 (ename,sex) VALUES('张百万','男');
-- 添加一条 ename重复的 数据
-- Duplicate entry '张百万' for key 'ename' ename不能重复
INSERT INTO emp3 (ename,sex) VALUES('张百万','女');
主键约束与唯一约束的区别: |
1. 主键约束 唯一且不能够为空 |
2. 唯一约束,唯一 但是可以为空 |
3. 一个表中只能有一个主键 , 但是可以有多个唯一约束 |
二、sql语句
### --- sql语句
/*
唯一约束
特点: 表中的某一列不能够重复 (对null值 不做唯一判断)
语法格式
字段名 字段类型 unique
*/
-- 创建 emp3表 为ename 字段添加 唯一约束
CREATE TABLE emp3(
eid INT PRIMARY KEY ,
ename VARCHAR(20) UNIQUE,
sex CHAR(1)
);
-- 测试唯一约束
INSERT INTO emp3 VALUES(1,'张百万','女');
-- Duplicate entry '张百万' for key 'ename' 不能重复
INSERT INTO emp3 VALUES(2,'张百万','女');
-- 唯一约束的值 可以为 null
INSERT INTO emp3 VALUES(2,NULL,'女');
-- 主键约束和唯一约束的区别
-- 1.主键约束 他是唯一且不能为空的
-- 2.唯一约束 唯一,但是可以为空
-- 3.一个表中只能有一个主键,但是可以有多个唯一约束
-- 外键约束 多表中再学习