2009-05-17 53 views
0

當我把下面的SQL查詢,自定義的SQL參數 - C#

SELECT 
    [ItemID], [Name], [RelDate], [Price], [Status] 
FROM 
    [item_k] 
WHERE 
    [ItemID] IN (" + itemIDs + ") 
在GridView的自定義SQL語句

,它被轉化爲,

SELECT 
    ItemID, Name, RelDate, Price, Status 
FROM 
    item_k 
WHERE 
    (ItemID IN ([ + itemIDs + ])) 

,當我執行查詢時顯示以下錯誤

SQL Execution Error 
Invalid column name '+ itemIDs+' 

什麼似乎是問題?

謝謝

回答

1

你有沒有嘗試把+ itemIDs +單引號?

1

您的字符串concat方法的問題是它可能會讓您容易受到SQL注入攻擊。我不會嘗試修復這種方法,但是去一個不需要字符串連接的參數化查詢。

0
SELECT [ItemID], [Name], [RelDate], [Price], [Status] FROM [item_k] WHERE [ItemID] IN (' + itemIDs + ') 

改爲「爲」和它的工作!

+0

哦,我的壞,未刪除。 – TonyArra 2009-05-17 16:41:11