【Oracle】【12】唯一性约束

前言:

唯一性约束和主键的区别:

主键(Primary Key):所有组成主键的列都不能包含空值。

唯一性约束(Unique Constraint):如果唯一性约束由多列组成,其中的部分列可以包含空值。

Oracle中不容许在相同列上既创建主键又创建唯一性约束,主键本来就具有唯一性。

正文:

1,创建表时同时创建唯一性约束

create table table_a
(
  id          number not null
 ,name        varchar2(50)
 ,avatar        varchar2(50)
 ,CONSTRAINT table_a_un1 UNIQUE (id) --基于单列的唯一性约束
);
--CONSTRAINT table_a_un2 UNIQUE (id, name) 基于多列的唯一性约束

2,表已经存在,添加唯一性约束

ALTER TABLE table_name --表名
ADD CONSTRAINT constraint_name --约束名
UNIQUE (column1, column2, ... , column_n); --列名

3,禁用唯一性约束

ALTER TABLE table_name
DISABLE CONSTRAINT constraint_name;

4,启用唯一性约束

ALTER TABLE table_name
ENABLE CONSTRAINT constraint_name;

5,删除唯一性约束

ALTER TABLE table_name
DROP CONSTRAINT constraint_name;

参考博客:

Oracle之唯一性约束(UNIQUE Constraint)用法详解 - david's Blog - CSDN博客
https://blog.csdn.net/jssg_tzw/article/details/40981393

原文地址:https://www.cnblogs.com/huashengweilong/p/10810689.html