2

这是我的存储过程。

ALTER PROCEDURE [dbo].[SearchIngredients] 
    @Term NVARCHAR(50) 
AS
BEGIN
    SET NOCOUNT ON;

    SELECT  *
    FROM    dbo.FoodAbbrev
    WHERE   Name LIKE '%@Term%'
    ORDER BY Name

END

我一直没有结果。我认为这是因为我将变量放在单引号中,并且可能 DB 认为这是字符串的一部分,而不是变量。尝试了其他一些方法,仍然无法解决,请帮助我。

我也试过。仍然一无所获。

    SET @Term = '''%' + @Term + '%'''

    SELECT  *
    FROM    dbo.FoodAbbrev
    WHERE   Name LIKE @Term
    ORDER BY Name
4

2 回答 2

6

简单地;

set @Term = '%' + @Term + '%'

您只需将 2 个常量字符串添加到变量中。

于 2012-09-12T14:41:38.713 回答
0

正确方法如下:

set @FieldValue = '''' + @FieldValue + ''''
于 2013-05-09T10:58:32.607 回答