|NO.Z.00031|——————————|BigDataEnd|——|Java&MySQL单表/约束/事务.V09|——|MySQL.v09|唯一约束|

一、唯一约束
### --- 唯一约束的特点: 表中的某一列的值不能重复( 对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.一个表中只能有一个主键,但是可以有多个唯一约束

-- 外键约束 多表中再学习

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

posted on 2022-04-05 13:30  yanqi_vip  阅读(17)  评论(0)    收藏  举报

导航