SQL Server 6.5:有关空字符串和空字符串的奇怪行为

时间:2013-01-30 16:03:59

标签: sql-server

SQL Server 6.5似乎没有区分零长度字符串和包含单个空格的字符串。

在所有版本的SQL Server中Trailing spaces are ignored in = comparisons都是如此,但这个问题不同。

此SELECT返回1:

SELECT DATALENGTH('')

我有一个包含varchar(20)FAX的表格,此更新似乎没有效果:

UPDATE CLIENT
SET FAX = ''  -- The existing field consists only of a single space
WHERE ClientNo = 124

即使在运行此更新后,该字段仍包含空格。

修剪仅包含空格的字段会导致NULL值,这对我们来说是不合需要的。

是否可以用空字符串替换空值?我该怎么做呢?

1 个答案:

答案 0 :(得分:-1)

SET ANSI_NULLS ON会有什么不同吗?