I_am_feminist Asked: 2017-04-29 19:06:06 +0800 CST2017-04-29 19:06:06 +0800 CST 2017-04-29 19:06:06 +0800 CST SQL中表的任何列都允许空值吗? 772 我对空值有疑问。因此你能简单地解释一下什么是sql中的空值吗?我们可以在sql表的任何地方使用空值吗? sql-standard null 1 个回答 Voted Best Answer SqlWorldWide 2017-04-29T19:38:36+08:002017-04-29T19:38:36+08:00 允许空值 使用 PRIMARY KEY 约束或 IDENTITY 属性定义的列不允许空值。 列的可空性决定了表中的行是否可以包含该列的空值。空值或 NULL 不同于零 (0)、空白或零长度字符串(如“”)。NULL 表示没有输入。NULL 的存在通常意味着该值是未知的或未定义的。 Microsoft SQL Server 对 NULL 的定义: NULL 值表示该值未知。NULL 值不同于空值或零值。没有两个空值是相等的。两个 null 值之间或 NULL 与任何其他值之间的比较将返回未知,因为每个 NULL 的值都是未知的。 空值通常表示数据是未知的、不适用的,或者数据将在以后添加。例如,在客户下订单时可能不知道客户的中间名首字母。 SET ANSI_NULLS 设置可以改变 NULL 的行为。在未来的版本中,此设置将默认打开,您将无法将其关闭。详情在这里: https ://learn.microsoft.com/en-us/sql/t-sql/statements/set-ansi-nulls-transact-sql 这是一篇深入探讨 NULL 的文章。 https://www.simple-talk.com/sql/t-sql-programming/how-to-get-nulls-horribly-wrong-in-sql-server/ TSQL 中 NULL 的几个例子在这里。
允许空值
Microsoft SQL Server 对 NULL 的定义:
SET ANSI_NULLS 设置可以改变 NULL 的行为。在未来的版本中,此设置将默认打开,您将无法将其关闭。详情在这里: https ://learn.microsoft.com/en-us/sql/t-sql/statements/set-ansi-nulls-transact-sql
这是一篇深入探讨 NULL 的文章。 https://www.simple-talk.com/sql/t-sql-programming/how-to-get-nulls-horribly-wrong-in-sql-server/
TSQL 中 NULL 的几个例子在这里。