撤销单个UPDATE语句是否造成数据损失?

简介:

在论坛看到有人执行了一个UPDATE,但是发现错了,问是否可以取消这个更新操作。因为涉及的数据比较多,所以怕取消操作造成数据不一致。

 

其实对于单独的UPDATE操作而言,都是当做一个隐性事务处理的,具有ACID属性,Non或者All.所以不管这个UPDATE会影响多少行,取消操作所有影响的行都会回滚,保证事务完整性。

 

下面的解释来自SQL SERVER 2008 INTERNALS:

 

An implicit transaction is any individual INSERT, UPDATE, DELETE, or MERGE statement. (You can also consider SELECT statements to be implicit transactions, although SQL Server does not write to the log when SELECT statements are processed.) No matter how many rows are affected, the statement must exhibit all the ACID properties of a transaction。

 


本文转自 lzf328 51CTO博客,原文链接:

http://blog.51cto.com/lzf328/1224152
相关文章
|
Java 数据库连接 mybatis
mybatismybatisPlus Update操作返回值不是影响行数
mybatismybatisPlus Update操作返回值不是影响行数
662 0
update 批量更新某条数据时取最新、最大的一笔更新
update 批量更新某条数据时取最新、最大的一笔更新
95 0
|
关系型数据库 MySQL Java
MySQL 巨坑:update 更新慎用影响行数做判断!!!
MySQL 巨坑:update 更新慎用影响行数做判断!!!
1279 0
MySQL 巨坑:update 更新慎用影响行数做判断!!!
|
SQL 关系型数据库 MySQL
操作delete或者update语句,加个limit或者循环分批次删除
操作delete或者update语句,加个limit或者循环分批次删除
|
SQL 数据库管理
【SQL开发实战技巧】系列(九):一个update误把其他列数据更新成空了?Merge改写update!给你五种删除重复数据的写法!
本篇文章讲解的主要内容是:***你有没有经历过一个update把其他列数据清空了、使用merge更新合并记录、删除违反参照完整性的记录、给你五种删除重复数据的写法*** 【SQL开发实战技巧】这一系列博主当作复习旧知识来进行写作,毕竟SQL开发在数据分析场景非常重要且基础,面试也会经常问SQL开发和调优经验,相信当我写完这一系列文章,也能再有所收获,未来面对SQL面试也能游刃有余~。
【SQL开发实战技巧】系列(九):一个update误把其他列数据更新成空了?Merge改写update!给你五种删除重复数据的写法!
|
消息中间件 JavaScript 小程序
一个update语句执行要10s,大厂的架构真垃圾!
一个update语句执行要10s,大厂的架构真垃圾!
|
SQL 关系型数据库 MySQL
十一、操作delete或者update语句,加个limit或者循环分批次删除
十一、操作delete或者update语句,加个limit或者循环分批次删除
323 0
|
存储 缓存 自然语言处理
一条更新语句是如何执行的?
一条更新语句是如何执行的?
163 0
一条更新语句是如何执行的?
|
SQL 关系型数据库 MySQL
MySql数据库Update批量更新与批量更新多条记录的不同值实现方法
MySql数据库Update批量更新与批量更新多条记录的不同值实现方法
2129 0