我有這個PROC:動態SQL - 東西了where子句
Create PROCEDURE [dbo].[myProc]
@TableName nvarchar(100),
@RowID int
AS
BEGIN
SET @SQLQuery = 'Select * from ' + @TableName + ' where ID = ' + @RowID ;
EXECUTE(@SQLQuery);
END
我基本上是想從這個返回結果行,沒有WHERE子句,所有的好。
看起來正確無誤(無論SQL注入漏洞如何)。什麼不工作? – Oded 2010-12-14 11:32:56
如果我拿出where子句,我會得到結果。但是在我得到的where子句中:轉換nvarchar值'Select * from [TableName] where ID ='轉換爲數據類型int時轉換失敗。 – 2010-12-14 11:36:14
添加打印@SQLQuery,您可以運行生成的查詢並檢查它是否返回行 – 2010-12-14 11:36:59