问题标签 [mysqldatareader]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
130 浏览

c# - 如何获取 2 列的内容并显示此内容?

我尝试显示列“PlayerName”和“HighScore”。也许在 MessageBox 中?有什么帮助吗?谢谢。

0 投票
0 回答
57 浏览

c# - 运行该方法两次时出现 MySqlDataReader 错误

我有这个代码。当我执行一次时,我可以获得正确的列表。但是当我再次运行这个方法时,阅读器没有数据。我在想我是否忘记在再次调用之前关闭某些连接,从而导致 null 结果

0 投票
1 回答
144 浏览

c# - 了解 MySqlDataReader 的内部结构

我想了解 MySqlDataReader(或一般的 IDataReader)的怪癖。在互联网上进行研究时,我发现了很多关于如何使用 MySqlDataReader 的资源,但对幕后发生的事情却知之甚少。我之所以这么问,是因为我发现在某些基准测试中,我执行执行所需的时间MySqlCommand.ExecuteReader()比读取所有数据集要小几个数量级MySqlDataReader.Reader()。这尤其适用于大型数据集。举个例子:我正在读取 ~740000 行,执行查询需要 80-100 毫秒,读取所有数据大约需要 15 秒。另一个示例是读取约 2200 行,查询时间为约 200 毫秒,约 1 秒以读取所有数据。

根据High Performance MySQL检索的数据缓冲在公共连接器(第 3 版,第 212 页)中,我假设这也适用于Connector/Net。我知道在 740000 行的情况下,可能并非所有数据都可以或应该被缓冲,但在第二个示例中应该可以轻松缓冲 2200 行(我要求不超过 5-7 列)。

在不从数据库读取的情况下创建相当数量的数据结构需要 <1 毫秒(使用 System.Diagnostics.Stopwatch 测量),因此这不是瓶颈。我想知道如果数据被缓冲,为什么从阅读器读取需要这么多时间。

0 投票
1 回答
273 浏览

mysql - 在 MYSQL 表中插入 1 亿条记录时出错

我有带有列的表 Temp_load:

上面是表 Temp_load 包含在其中的列。

我正在尝试使用以下查询将数据插入此表

Source 表中有 2900 万条记录。上面的插入语句运行了 5 个多小时并且还在运行。我正在从同一张表中一次性插入 2900 万,我需要在不同的列上再插入 3 倍。

当我尝试使用 LOAD DATA INFILE 加载时,它会抛出 ERROR 1205 (HY000): Lock wait timeout exceeded; 尝试重新启动事务我也尝试将 innodb_lock_wait_timeout 增加到 120,但我们仍然面临问题。

同样在加载之前,我已在标志下方禁用。

我们还有其他最佳解决方案吗?插入可以以更快的方式完成。

谢谢

0 投票
1 回答
270 浏览

mysql - MySqlDataReader 不返回数据

作为通过屏幕抓取将数据导入 wordpress 的项目的一部分,我有一个存储在 MySQL 数据库中的新旧 URL 的数据库表。在下面的示例中,ExecuteReader 命令似乎没有返回任何数据(影响-1 行),我通过工作台运行 SQL 并返回数据,因此它不是 SQL 或数据库中的数据。

在其他时候,我在代码中调用了 ExecuteNonQuery() 和 ExecuteScalar() 都没有问题(所以它不是连接字符串)。

任何想法接下来要尝试什么?

0 投票
1 回答
1406 浏览

c# - ExecuteReader 上的 Mysql 异常

好吧,我的程序有一个奇怪的异常,所以我试图复制它给你们看,所以我所做的是创建一个带有 id(int-11 primary)、title(varchar-255) 的表并生成 100k 个随机标题40 个字符长度,当我运行读取每个 id 计数的方法时,它会在下面抛出异常检查以获取更多信息。

我发现这是因为超时所以我尝试了这个超时。

  1. 设置 net_write_timeout=99999;设置 net_read_timeout=99999;
  2. 在连接上尝试 pooling=true
  3. 试过 cmd.timeout = 120;

我还尝试添加我玩过多个值的 MaxDegreeOfParallelism,但一段时间后仍然出现相同的错误。

我的例外:

无法终止查询,正在中止连接。异常是无法从传输连接中读取数据:连接尝试失败,因为连接方在一段时间后没有正确响应,或者连接失败,因为连接的主机没有响应。


使用超时选项读取 int 的替代方法。

这可能是什么原因造成的?任何线索?

0 投票
1 回答
299 浏览

c# - C# 循环通过 DataGridView - MySqlDataReader 在 2 行后停止?

我在使用 C# ATM 时遇到了困难......

关于这段讨厌的代码:

这个循环只经过两次,然后就停止了……

有趣的是,当我取消注释除“MessageBox”之外的所有内容时,它会很好地循环遍历每一行并显示我的 DataGridView 的每个“order_id”。

它应该做的是:

遍历现有的 DataGridView 并从每一行获取“Order_id”。然后我想计算客户已经下了多少订单,并将结果附加到 DataGridView 的第 11 行中...

有任何想法吗?

正如我所说,它在第二排之后停止......

0 投票
1 回答
265 浏览

c# - 时间:2019-04-10 标签:c#mysqlreader多线程失败

我正在使用与多线程 sdk 交互的 c# 编写数据库类。我应该只使用一个连接(不用说!)但是,我总是收到有关connection 和 datareaders的错误。Anly 帮助表示赞赏。

这是我的代码的结构

0 投票
3 回答
353 浏览

c# - C# 数据读取器错误

我在论坛上寻找这个问题的解决方案,但我没有找到适合我的问题的解决方案。单击按钮时,我收到错误:

已经有一个打开的 DataReader 与此 Connection 关联,必须先关闭它。

因此,我尝试在使用它们后关闭所有 DataReaders,我尝试使用CommandBehavior,但它们都不起作用。我尝试使用using(MysqlCommand...)但没有用。我能做些什么?最奇怪的是代码正在运行,但每次按下按钮后,我都会再次收到该错误。有任何想法吗?

请不要将问题标记为重复,我知道问题存在于此,但我猜我的问题缺少答案。

0 投票
0 回答
55 浏览

c# - 如何一一获取结果'MySqlDataReader'

我在同一时间得到的结果很少,但我想一个一个得到,我应该添加什么?