为了满足我的一个要求,我需要将SQL查询作为参数传递给存储过程。
我的存储过程语法是:
create PROCEDURE spSelect
@Query VARCHAR(500)
AS
EXEC( @Query)
return
要执行该存储过程,我使用此C#代码:
DataContex db=new DataContex();
String sSQL = " SELECT OrderID,ShipName FROM dbo.Orders";
var result = db.spSelect(sSQL);
执行后,result
为0
。
需要帮助来了解发生了什么,为什么不能获得所需的输出
如果有任何疑问,请提前致谢
答案 0 :(得分:1)
您需要使用sp_executesql (Transact-SQL)执行它:
create PROCEDURE spSelect
@Query VARCHAR(500)
AS
EXECUTE sp_executesql @Query
return