gpt4 book ai didi

sql - 唯一约束列可以具有2个或多个空值吗? (甲骨文)

转载 作者:行者123 更新时间:2023-12-04 01:46:24 26 4
gpt4 key购买 nike

唯一约束列中是否可以有2个或多个空值?

最佳答案

易于检查:(答案为是)

create table t1 (col1 number unique);

Table T1 created.

insert into t1 values (1);

1 row inserted.

insert into t1 values (null);

1 row inserted.

insert into t1 values (null);

1 row inserted.

select rownum, col1 from t1;

ROWNUM COL1
---------- ----------
1 1
2
3

3 rows selected.


编辑:尽管上面显示的是唯一约束中涉及一列的答案,但也可以具有复合唯一键(在表级别而不是列级别定义的约束-涉及两个或多个列)。在那种情况下,如果说唯一键打开(col1,col2,col3),则(1、1、0)和(1、1、3)不会重复,因为它们在每个位置都不相同。在这种情况下,允许(1,1,null),但仅允许一次。但是,一列中“值”为空的正确“一般化”是使“三三个”列中的所有值都为空。在这方面,唯一键列中具有“空值”的行仍允许任意次数。

也就是说:虽然允许(1,1,null),但不超过一次,但组成唯一键的三列中具有值(null,null,null)的行被允许任意次数-就像在单列情况下。

关于sql - 唯一约束列可以具有2个或多个空值吗? (甲骨文),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40027068/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com