温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

什么是数据库唯一约束

发布时间:2026-09-26 20:24:23 来源:亿速云 阅读:116 作者:小樊 栏目:数据库

数据库唯一约束(UNIQUE Constraint) 是关系型数据库中用来保证数据中某一列(或某几列的组合)的值在表中不重复的一种约束条件。

1. 核心作用

  • 防止重复数据:确保指定字段的值在整张表中是唯一的。
  • 保证数据准确性:例如用户手机号、邮箱、身份证号等不应重复。

2. 基本特点

  • 一张表可以有多个 UNIQUE 约束。
  • 允许空值(NULL),且大多数数据库允许有多个 NULL(因为 NULL 不等于 NULL)。
  • 与主键(PRIMARY KEY)不同:
    • 主键:唯一且非空,一张表只能有一个
    • 唯一约束:唯一但可空,一张表可有多个

3. 常见使用方式

单列唯一约束

CREATE TABLE user (
  id INT PRIMARY KEY,
  email VARCHAR(100) UNIQUE
);

多列联合唯一约束

CREATE TABLE member (
  user_id INT,
  group_id INT,
  UNIQUE (user_id, group_id)
);

表示“同一用户不能重复加入同一群组”。

4. 与索引的关系

  • 数据库通常会为 UNIQUE 约束自动创建唯一索引
  • 既保证唯一性,也提升查询效率

5. 违反唯一约束会怎样

当插入或更新数据导致重复时,数据库会报错,例如:

Duplicate entry 'test@qq.com' for key 'email'

如果你愿意,我也可以结合某一种数据库(如 MySQL、PostgreSQL)具体讲用法和区别。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手