2013-10-04 135 views
4

有人可以幫助我的語法連接傳遞變量到SQL字符串

DECLARE @SearchString NVARCHAR(MAX) 
SET  @SearchString = 'fletc' 

USE [Prodution] 
GO 

SELECT * FROM [User] WHERE Username LIKE '%' + @SearchString + '%' 

我想在底部以連接LIKE語句。但是,我得到的連接錯誤消息:

消息137,級別15,狀態2,3號線
必須聲明標量變量 「@SearchString」。

任何幫助將不勝感激。

感謝

羅布

回答

6

採用GO終止範圍(被宣佈之前被 「丟失」 的所有變量) - 將你的聲明GO後:

USE [Production] 
GO 

DECLARE @SearchString NVARCHAR(MAX) 
SET  @SearchString = 'fletc' 

SELECT * FROM [User] WHERE Username LIKE '%' + @SearchString + '%' 
+1

Hello Marc,非常感謝您的幫助。它現在完美。 – Robert

1

在您的代碼:

DECLARE @SearchString NVARCHAR(MAX) 
SET  @SearchString = 'fletc' 

USE [Prodution] 
GO 

SELECT * FROM [User] WHERE Username LIKE '%' + @SearchString + '%' 

有一個GO語句。 GO之後再次啓動可見性