码迷,mamicode.com
首页 > 数据库 > 详细

数据库事务

时间:2019-06-15 11:42:37      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:update   一个   com   comm   需要   bms   --   更新   主键约束   

事务(transaction):是需要在同一个处理单元中执行的一系列更新处理的集合(INSERT/DELETE/UPDATE)
事务语法:
    事务开始语句(START TRANSACTION):
    DML语句1
    DML语句1
    DML语句1
    ...
    事务结束语句(COMMIT或者ROLLBACK)

START TRANSACTION;
--运动T恤的销售单价下调1000日元
UPDATE Product
     SET sale_price = sale_price - 1000
 WHERE product_name = '运动T恤';

-- T恤的销售单价上浮1000日元
UPDATE Product
     SET sale_price = sale_price + 1000
 WHERE product_name = 'T恤';
COMMIT;

注:orcle和db2没有特定的开始语句

COMMIT:事务一旦提交就无法恢复到开始前的状态了

ROLLBACK:一旦回滚,数据库就会恢复到事务开始之前的状态

事务的四种特性:
  • 原子性:事务结束时,其中包含的更新处理要么全部执行,要么全部不执行。
  • 一致性(完整性):事务中包含的处理要满足数据库提前设置的约束,如主键约束或者not null约束。(违反约束会导致失败)
  • 隔离性:保证不同的事物之间互不干扰。该特性保证了事物之前互相不嵌套,某个事物进行中的更改,在改事物结束之前,对其他事物而言是不可见的。没有提交之前,其他事物看不到新添加的记录。
  • 持久性:事物结束后,DBMS能保证该时间点的数据转态会被保存的特性。

数据库事务

标签:update   一个   com   comm   需要   bms   --   更新   主键约束   

原文地址:https://www.cnblogs.com/sanzashu/p/11026910.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!