9

我只是这样做了:

Delete FROM MyTable WHERE ScopeValue = "" 
Delete FROM G_Scope WHERE ScopeValue is ''
Delete FROM G_Scope WHERE ScopeValue = empty
Delete FROM G_Scope WHERE ScopeValue is empty

我想删除所有带有 xml 字段(不可为空)的行,其中 ScopeValue 列有空条目表示零字符。

有谁知道?

4

1 回答 1

13

尝试这个:

 DELETE FROM dbo.G_Scope WHERE ScopeValue IS NULL

NULL如果不包含任何值,则SQL Server 列将是。

另一种可能性是 XML 不是 NULL,而是包含一个空字符串作为其值。为此,请使用以下命令:

-- The DATALENGTH of an empty XML column is 5
SELECT * FROM dbo.G_Scope WHERE DATALENGTH(ScopeValue) = 5

这会显示您感兴趣的行吗?

于 2010-06-25T13:55:41.313 回答