sql – 在所有查询中都有TRANSACTION

前端之家收集整理的这篇文章主要介绍了sql – 在所有查询中都有TRANSACTION前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
你认为对存储过程中的每个sql语句进行TRANSACTION是一个好习惯吗?即将在我的公司中优化这个遗留应用程序,我发现有一件事是每个存储过程都有BEGIN TRANSACTION.即使是简单的select和Update语句也有一个.如果一个人正在执行多个操作,即(多个插入或更新或删除),而不仅仅是一个操作插入或更新或删除,我认为拥有BEGIN TRANSACTION会更好.我可能错了,这就是我需要别人给我建议的原因.谢谢你的时间.

解决方法

完全没必要,因为每个sql语句都以原子方式执行,即.就好像它已经在自己的交易中运行一样.实际上,打开不必要的事务可能会导致锁定增加,甚至死锁.只要与数据库的连接打开并且干扰同一连接中的其他事务,忘记将COMMIT与BEGIN匹配就可以使事务处于打开状态.

这样的编码几乎肯定意味着编写代码的人在数据库编程方面不是很有经验,并且确实存在可能存在其他问题的气味.

猜你在找的MsSQL相关文章