C#重复使用SQLCommand

4

我该如何重复使用SQLCommand来执行多个查询?

例如:

SqlCommand mycommand = new SqlCommand("SElect * from BKLAH", myConnection);
mycommand.ExecuteNonQuery();

现在我想再次使用mycommand,但使用不同的SQL查询。我该怎么做?

2
但我想了解为什么? - Bestter
@dasblinkenlight已经给出了答案,然而使用它似乎有点毫无意义。 - Tony Hopkinson
2个回答

9
您可以设置命令的CommandText属性,如下所示:
mycommand.CommandText = @"UPDATE BKLAH SET a = 5 WHERE id=@id";

0

我会在 USING 部分中使用它。

命令1:

using (SqlCommand mycommand = new SqlCommand("SElect * from BKLAH", myConnection))
{
mycommand.ExecuteNonQuery();
}

命令2:

using (SqlCommand mycommand = new SqlCommand("SElect * from BKLAH2", myConnection))
{
mycommand.ExecuteNonQuery();
}

虽然我完全同意这是你应该做的,但那并没有重用我的命令。 - Tony Hopkinson
1
没错。但个人认为,重复使用同一个SqlCommand并不是一个好的做法,尽管它是可行的。 - Bestter
全心全意地赞同,必须是非常特定的情况,因为实际上您将持久化连接,除了非常罕见的情况外,在ADO.Net中这是一个非常糟糕的想法。 - Tony Hopkinson

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接