可能使用一个SqlCommand进行多次查询?

时间:2009-10-01 12:59:58

标签: .net sql sql-server

是否可以在.net?

中向SqlCommand对象添加多个查询

如果其中一个查询失败并且其余查询成功,该命令是否会将此报告为失败或成功?

最后一个问题:查询可以共享相同的参数吗?那么,这是可能的:

 UPDATE mytable 
    SET column1 = @param1 
  WHERE recid = @recid; 

 UPDATE mytable2 
    SET column1 = @param1 
  WHERE recid = @recid2;       

(所以param1在查询之间共享)

谢谢!

[R

1 个答案:

答案 0 :(得分:9)

您可以在CommandText对象的SqlCommand中包含多个语句,这不是问题,他们也可以共享参数。它基本上传递给sql server上的sp_executesql并执行。如果您正在执行多个UPDATE,那么您将希望在事务中执行这些操作,以便在其中一个语句出现故障时可以回滚。

如果返回多个记录集,您可以使用SqlDataReader的{​​{1}}方法获取下一个结果集。