c# MySQL查询中的DataReader循环查询

本文关键字:查询 DataReader 循环 MySQL | 更新日期: 2023-09-27 18:15:23

我在c#中有一个方法,它应该从mysql中获得一些数据,然后将这些数据插入另一个表中。
问题是,无论我怎么尝试,我得到的都是another datareader is open
我尝试使用using语句,但没有成功,也许我做错了。
怎么做呢?

public void MethodName(List<string> objects)
{
    foreach(string Object in objects){
        SQLActions.Initialize();
        SQLActions.SQL_Open();
        MySqlDataReader queryData = SQLActions.SQL_Query("SELECT...query...");
        MySqlDataReader objectsData = SQLActions.SQL_Query("Another select....");
        SQLActions.SQL_NonQuery("Insert...");
        while(queryData.Read()){
            SQLActions.SQL_NonQuery("Another Insert...");
        }
        SQLActions.SQL_Close();
    }
}

c# MySQL查询中的DataReader循环查询

您可能对DataReader和ExecuteNonQuery使用相同的连接。这是不支持的,根据MSDN: http://msdn.microsoft.com/en-us/library/haa3afyz(v=vs.80).aspx

检查:

c# mySQL已经有一个开放的DataReader关联

微软:

在使用完DataReader对象后,应该始终调用Close方法