我正在尝试使用FREETEXT
. @name 字段通常有空值,这不是程序中的错误。这只是意味着正在使用其他搜索方法。
本来我有
DECLARE @Name varchar(50) = ... -- some value which many be NULL or blank
SELECT ID
FROM dbo.Data WITH (NOLOCK)
WHERE FREETEXT(*, @Name)
我试过了
DECLARE @Name varchar(50) = ... -- some value which many be NULL or blank
SELECT ID
FROM dbo.Data WITH (NOLOCK)
WHERE @Name IS NOT NULL AND FREETEXT(*, @Name)
但我仍然得到
消息 7645,级别 15,状态 2,第 3 行 Null 或空的全文谓词。
解决这个问题的好方法是什么?
附加说明
SELECT ID
FROM dbo.data WITH (NOLOCK)
WHERE FREETEXT(*, ' ')
也抛出和错误