VB.Net无法识别活动的MySQL事务

时间:2018-05-07 06:24:11

标签: mysql vb.net transactions information-schema

我正在VB.Net中编写一个应用程序,它通过MySQL ODBC 3.51驱动程序工作,数据存储在MySQL数据库中。尝试模拟并发访问,我打开了MySQL Workbench和我的应用程序。

在Workbench中我锁定了一些记录:

begin;
select * from tbltest where test like 'test%' for update;

在我的应用程序中,我查询MySQL数据库:

SELECT COUNT(*) FROM information_schema.innodb_trx;

由于存在活动交易,我正确地回到'1'。

我在Workbench中回滚事务并以相反的方式尝试相同的操作。这次我在我的应用程序中启动事务,具有完全相同的SQL代码:

begin;
select * from tbltest where test like 'test%' for update;

但是当我在Workbench中查询 information_schema.innodb_trx 时,我回到'0':Workbench找不到活动的事务。

当我将代码更改为以下内容时,Workbench以及我的应用程序正确地找到了一个活动的事务:

begin;
select * from tbltest for update;

在第一种情况下,我的VB.Net应用程序找不到交易,而在第二种情况下,它怎么做呢? MySQL ODBC驱动程序会出现更普遍的问题吗?

谢谢!

0 个答案:

没有答案