sql server 2008存储过程,不能在单引号中使用变量

qin*_*126 2 sql-server stored-procedures sql-server-2008

这是我的存储过程.

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

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

END
Run Code Online (Sandbox Code Playgroud)

我一直没有得到任何结果.我认为这是因为我把变量放在单引号中,可能DB认为这是字符串的一部分,而不是变量.尝试了其他一些方法,还是无法修复它,请帮帮我.

我也试过了.仍然没有得到回报.

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

    SELECT  *
    FROM    dbo.FoodAbbrev
    WHERE   Name LIKE @Term
    ORDER BY Name
Run Code Online (Sandbox Code Playgroud)

Ale*_* K. 6

只是;

set @Term = '%' + @Term + '%'
Run Code Online (Sandbox Code Playgroud)

你只需要为变量添加2个常量字符串.