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

Sql server sql server 2008存储过程,不能在单引号中使用变量,sql-server,sql-server-2008,stored-procedures,Sql Server,Sql Server 2008,Stored Procedures,这是我的存储过程 ALTER PROCEDURE [dbo].[SearchIngredients] @Term NVARCHAR(50) AS BEGIN SET NOCOUNT ON; SELECT * FROM dbo.FoodAbbrev WHERE Name LIKE '%@Term%' ORDER BY Name END 我一直没有得到结果。我认为这是因为我把varaible放在了单引号中,DB可能认为这是字符串的

这是我的存储过程

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

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

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

我也试过了。还是一无所获

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

    SELECT  *
    FROM    dbo.FoodAbbrev
    WHERE   Name LIKE @Term
    ORDER BY Name
简单地

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

您只需向变量添加两个常量字符串。

正确的方法如下:

set @FieldValue = '''' + @FieldValue + ''''