小编Lok*_*ddy的帖子

主键是否只包含一个 Null 值...?

我的工作

  • 主键是唯一的,并且只有一个包含表。

  • 表中可以包含许多唯一键。

  • 在 SQL Server 中,主键不可为 Null。但是,唯一键可能只包含一个空值。

我的问题:

实际上,在 SQL Server 中,主键不可为空。但是从理论上讲,当它允许唯一键中的 Null 值时,为什么我们不能在键中只有一个 Null 值呢?

谢谢回答我的问题

很抱歉问了一个一般性问题,在阅读了答案后,我对 DB 中的空值有了一个清晰的了解。

此外,我对 C++、Jave 等编程语言感到困惑,在这些语言中,空值可以进行比较。做了一些工作后,我明白Null 在SQL 中是没有可比性的。

在 C++、Java 等编程语言中...

Null==Null 
Run Code Online (Sandbox Code Playgroud)

返回真

但是,在 SQL 中

Null==Null 
Run Code Online (Sandbox Code Playgroud)

返回 FALSE,因为 Null 值是未知的,它可以是任何值。

primary-key dbms unique-constraint

1
推荐指数
1
解决办法
1063
查看次数

标签 统计

dbms ×1

primary-key ×1

unique-constraint ×1