同一个事务中,执行select与insert同一个表,为什么会出现错误呢?什么样一个原理

踏雪听雨 2010-08-08 03:50:43
同一个事务中,执行select与insert同一个表,为什么会出现错误呢?什么样一个原理
...全文
613 33 打赏 收藏 转发到动态 举报
写回复
用AI写文章
33 条回复
切换为时间正序
请发表友善的回复…
发表回复
bearben2010 2010-08-10
  • 打赏
  • 举报
回复
别贴你自己分析的结果,把具体的Exception信息贴出来。以及测试的两个连接字符串(把敏感信息替换掉)
踏雪听雨 2010-08-09
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 jinleisnake 的回复:]
报什么错呢?我试过了"同一个事务中,执行select与insert同一个表",没问题.
[/Quote]

这里使用的就是分布式事务的场景了,打开同一个链接,也是做测试,表明问题
sywcf 2010-08-09
  • 打赏
  • 举报
回复
事务要建立在同一个链接上,楼主建了两个链接,用事务有用吗?
估计用了到时也会出问题
hefuming5 2010-08-09
  • 打赏
  • 举报
回复
顶着 学习
踏雪听雨 2010-08-09
  • 打赏
  • 举报
回复
错误信息就是丢失数据库链接。
bearben2010 2010-08-09
  • 打赏
  • 举报
回复
没用过MySql,你能贴出来你的错误信息么?
踏雪听雨 2010-08-09
  • 打赏
  • 举报
回复
mysql真的不支持分布式事务吗?
bearben2010 2010-08-09
  • 打赏
  • 举报
回复
...忘问了。你的错误提示是什么?好像得开启一个分布式事务的服务吧,那个服务默认是手动启动的
bearben2010 2010-08-09
  • 打赏
  • 举报
回复
好像分布式事务的数据库连接字符串上多了一些东西吧,记不太清了,但是看到过,希望没记错。晚上回家看一下,那本书没带
bearben2010 2010-08-09
  • 打赏
  • 举报
回复
MySql数据库支持分布式事务么?
gaoqingchun2007 2010-08-09
  • 打赏
  • 举报
回复
没看出事务(TransactionScope )和链接(MySqlConnection )怎样关联的
  • 打赏
  • 举报
回复
查询也放在事务中>?
我很奇怪..如果 事务发生 回滚,会怎么样??

查询是如何 回滚的??呵呵
sywcf 2010-08-09
  • 打赏
  • 举报
回复
分布式事务 我还没用过,在这里学习了
踏雪听雨 2010-08-09
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 sywcf 的回复:]

楼主,两个sql语句,用了两个链接,第一个没执行完,第二个不让执行,这是正常的
你试下改用同一个链接,事务的前提是建立在同一个链接上的
[/Quote]

分布式事务是建立在多个链接上吧。
sywcf 2010-08-09
  • 打赏
  • 举报
回复
楼主,两个sql语句,用了两个链接,第一个没执行完,第二个不让执行,这是正常的
你试下改用同一个链接,事务的前提是建立在同一个链接上的
踏雪听雨 2010-08-09
  • 打赏
  • 举报
回复
[Quote=引用 19 楼 wangjunfeng2010 的回复:]

应该不是事务造成的错误,是你的cmd3中的insert本事有错误.
[/Quote]

insert没错误,这是经过了单元测试的代码。
wangjunfeng2010 2010-08-09
  • 打赏
  • 举报
回复
应该不是事务造成的错误,是你的cmd3中的insert本事有错误.
honey52570 2010-08-09
  • 打赏
  • 举报
回复
会发生死锁
  • 打赏
  • 举报
回复
Begin Tyr
执行语句
End Try
BEGIN CATCH
IF @@TRANCOUNT > 0
ROLLBACK TRANSACTION
End Catch
IF @@TRANCOUNT > 0
COMMIT TRANSACTION
huiaccp 2010-08-09
  • 打赏
  • 举报
回复
MySqlCommand cmd1 = new MySqlCommand("select * from Company;insert into Company(companyid, companyname, createtime, createuser) values(@companyid, @companyname, @createtime, @createuser)", conn1);

cmd1.ExecuteNonQuery();
加载更多回复(12)

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧