我需要执行多个命令,但只需一个连接。以下是一个例子
MySqlCommand myCommand = myConnection.CreateCommand();
MySqlCommand myCommand2;
myCommand.CommandText = "Some query text"
MySqlDataReader myReader = myCommand.ExecuteReader();
while (myReader.Read())
{
myCommand2 = myConnection2.CreateCommand();
myCommand2.CommandText = "Query with parameters from myCommand"
MySqlDataReader myReader2 = myCommand2.ExecuteReader();
while (myReader2.Read())
{
}
}
我希望只使用一个myConnection来执行此代码,这可能吗?因为如果我删除myConnection2并将其替换为myConnection,我会收到错误,因为第一个命令仍处于打开状态。
答案 0 :(得分:0)
尝试添加“POOLING = FALSE;”在MySQL ConnectionString的末尾。
答案 1 :(得分:0)
打开一个连接并构建一个
public static object QueryHelper(string command)
{
...
}
使用
public static bool ReadyToQuery;
等到第一个命令结束才能运行第二个命令。
只是因为每个连接只能一个读者。