Chr☆s Kwok 的技术笔记

.NET, C#, WPF, WCF, WF, .NetCore & LINQ ... I know how it works because I know why it works ...

博客园 首页 新随笔 订阅 管理

我们知道SQL SERVER,在查询分析器下执行Insert, Update, Delete等语句(脚本)时,执行成功后就自动提交到数据库层面了,这是由于DBMS自动设置为隐式事务模式(SET IMPLICIT_TRANSACTIONS OFF,相当于AUTOCOMMIT = ON),这样的好处是不用显式执行COMMIT语句,也不会阻塞其他连接的会话查询数据或更改和相关表的数据。但也由于是自动提交的,往往应用系统运维人员后台执行了这类DML语句忘了带上WHERE条件,可能整个表的数据就被错误更改了,这样的手工低级错误实际情况时有发生。为了避免该情况的发生,可以考虑修改SQL Server Management Studio管理工具的配置为默认不自动提交事务模式。

操作步骤:工具 -> 选项 -> 查询执行--SQL Server--ANSI,勾选SET IMPLICT_TRANSACTIONS(M)。

posted on 2023-03-15 14:52  Chr☆s  阅读(701)  评论(0编辑  收藏  举报