MySQL异常 - 数据读取期间遇到的致命错误

Vin*_*nce 9 c# mysql mysql-connector

我正在研究一个C#控制台程序,它从表中获取大量记录,通过医学分析器运行它们,然后更新每个记录.它使用MySQL Connector/NET 5.2.7.它的工作方式是我使用SQL_BUFFER_RESULT一次抓取数据块(即20,000行)以避免锁定.每条记录都通过分组器运行,然后在该记录上完成单独的更新查询.使用了两个连接,一个读连接和一个写连接.

因此,当程序执行并循环读取查询中的记录时,它使用result.Read()来执行此操作,其中result是MySqlDataReader.result.Read调用是抛出异常的地方.它是随机发生的(不是在同一记录或任何事情上).一旦在第一条记录上遇到它,它也会在数据读取器的每次后续读取调用中遇到.我尝试过很多东西,并且搜寻其他人遇到的相关问题.任何见解都会很棒,并随时让我知道我需要提供的其他信息.

小智 14

在connection.Open()之间; 和command.ExecuteNonQuery(); 我刚添加了两行,如下所示:

connection.Open();

MySqlCommand cmd = new MySqlCommand("set net_write_timeout=99999; set net_read_timeout=99999", connection); // Setting tiimeout on mysqlServer
cmd.ExecuteNonQuery();

int numOfRecordsUpdated = command.ExecuteNonQuery();
Run Code Online (Sandbox Code Playgroud)

问题修正:)