Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 关于SQL Server中的空/空数据库字段_Sql Server_Database - Fatal编程技术网

Sql server 关于SQL Server中的空/空数据库字段

Sql server 关于SQL Server中的空/空数据库字段,sql-server,database,Sql Server,Database,我混淆了很多,关于,空的,空的和非空的数据库字段值。 我有一个选项卡,其中有几个字段包含空/空白数据,其中一些字段包含空数据,并且包含实际数据。 我搞不清楚Epmyt/Blank和Null数据之间的区别 请帮帮我 谢谢 Ravik空或空白通常指空字符串值,长度=0个字符。Null表示没有值,甚至不是空值。空或空通常指空字符串值,长度=0个字符。Null表示没有值,甚至不是空值。Null是一个数据库指示符,指定数据库中的值缺失或不确定。空字符串是长度为零的varchar字符串 选择值时,它们可能相

我混淆了很多,关于,空的,空的和非空的数据库字段值。 我有一个选项卡,其中有几个字段包含空/空白数据,其中一些字段包含空数据,并且包含实际数据。 我搞不清楚Epmyt/Blank和Null数据之间的区别

请帮帮我

谢谢
Ravik

空或空白通常指空字符串值,长度=0个字符。Null表示没有值,甚至不是空值。

空或空通常指空字符串值,长度=0个字符。Null表示没有值,甚至不是空值。

Null是一个数据库指示符,指定数据库中的值缺失或不确定。空字符串是长度为零的varchar字符串

选择值时,它们可能相同,也可能不同。例如,SQLServerManagementStudio将空值导出为空值,而不是空字符串

空值遵循一些非常基本的比较规则,许多人认为这些规则违反直觉。任何比较操作(is null除外)都返回false。特别是,以下两个返回值为false:

where NULL = NULL
where NULL <> NULL
空白/空字符串只是长度为0的可变长度字符串的值,通常表示为。以下情况不会返回true:

where '' = ''
where val = val                  -- given that val is ''

一个复杂的问题是一些数据库将空值视为零长度字符串。我想到了甲骨文。但是,这不是符合ANSI标准的行为。

NULL是一个数据库指示符,指定数据库中的值缺失或不确定。空字符串是长度为零的varchar字符串

选择值时,它们可能相同,也可能不同。例如,SQLServerManagementStudio将空值导出为空值,而不是空字符串

空值遵循一些非常基本的比较规则,许多人认为这些规则违反直觉。任何比较操作(is null除外)都返回false。特别是,以下两个返回值为false:

where NULL = NULL
where NULL <> NULL
空白/空字符串只是长度为0的可变长度字符串的值,通常表示为。以下情况不会返回true:

where '' = ''
where val = val                  -- given that val is ''

一个复杂的问题是一些数据库将空值视为零长度字符串。我想到了甲骨文。但是,这不是符合ANSI标准的行为。

NULL与空值不同,如果使用NULL,则无法确定该值是否为空。这在您的数据库中具有真正可测量的影响。以下是一些例子:

空varchar字段的LEN为0。空字段的LEN仍然为空。。。你不知道这个领域有多大

两个空字段与它们自身的值相比较=为真。您不知道两个NULL字段是否相等,因此NULL=NULL将导致NULL

联合。。。对空字段的修改将导致空字段。联合体是空的。。。一个空字段的值将传递到下一个值


像这样的例子还有很多。NULL并不意味着空。NULL表示我不知道。

NULL与空值不同,如果使用NULL,则无法确定该值是否为空。这在您的数据库中具有真正可测量的影响。以下是一些例子:

空varchar字段的LEN为0。空字段的LEN仍然为空。。。你不知道这个领域有多大

两个空字段与它们自身的值相比较=为真。您不知道两个NULL字段是否相等,因此NULL=NULL将导致NULL

联合。。。对空字段的修改将导致空字段。联合体是空的。。。一个空字段的值将传递到下一个值

像这样的例子还有很多。NULL并不意味着空。空表示我不知道