UNIQUE约束的字段能不能接受空值
来源:百度知道 编辑:UC知道 时间:2024/07/07 16:18:19
约束有哪些?
UNIQUE约束的字段能不能接受空值?为什么?
UNIQUE约束的字段能不能接受空值?为什么?
同一具有UNIQUE约束的列或者行,可以允许只有一个空值,就是相当于,这个具有空值的行或者列可以用空值来和其他非空值行或者列区别。
而约束中的PRIMARY KEY,不能允许有空值。它来定义基本表的主键,起唯一标识作用,值不能是NULL,不能重复,以此来保证实体的完整性。
UNIQUE约束允许空值(NULL),但UNIQUE是唯一约束,所以每一个UNIQUE约束中最多只能有一个空值的行。
创建方法如下(创建表的同时创建):
create table unique_test
(id number,
fname varchar2(20),
lname varchar2(20),
address varchar2(100),
email varchar2(40),
constraint name_unique unique(fname,lname))
表已存在,然后创建:
alter table unique_test
add constraint email_unique unique(email);
注意:如果表已存在,并且里面有数据的话再创建,使用unique的列里的内容,必须不能重复。