任何一个可以告诉 使用相同的SqlCommand对象在.net应用程序中执行多个命令。ado.net使用相同的sqlcommand对象执行多个命令
情况: 我有一个Truncate table命令首先执行。 然后我会执行SqlBulkcopy操作 然后我想要相同的命令对象执行另一个存储过程,这将会执行一些更新或将数据移动到不同的表。
我不想创建一个新的Command对象。
还有一件事是所有三个操作都在一个事务中。
在此先感谢。
任何一个可以告诉 使用相同的SqlCommand对象在.net应用程序中执行多个命令。ado.net使用相同的sqlcommand对象执行多个命令
情况: 我有一个Truncate table命令首先执行。 然后我会执行SqlBulkcopy操作 然后我想要相同的命令对象执行另一个存储过程,这将会执行一些更新或将数据移动到不同的表。
我不想创建一个新的Command对象。
还有一件事是所有三个操作都在一个事务中。
在此先感谢。
您不必创建新的对象。只需指定一个新的
command.CommandText = "SELECT FROM WHERE...";
与执行每个命令之前的neccesary参数。
你可以做到这一点,我相信......
SqlCommand command = new SqlCommand();
command.CommandText =
"SELECT FROM WHERE...; SELECT FROM WHERE...; SELECT FROM WHERE...;";
你不能包括所有操作在一个命令文本“GO”它们之间的说法,如果你需要查询段分批来运行你也可以使用这个事务处理
TRUNCATE TABLE X;
GO
/* do SqlBulkcopy code*/
GO
/* EXECUTE STORED PROC*/
GO
您可以使用相同的SqlCommand对象来执行更多的命令。只要确保以下属性重置为适当的值