python之SQL事务

python之SQL事务

  • 1 前言
    • 1.1 背景-- 业务的回滚
    • 1.2 事务Tansaction的定义
  • 2 事务语句
    • 2.1 事务操作流程
    • 2.2 案例 -- 以银行转账业务入例:

1 前言

1.1 背景-- 业务的回滚

当一个业务执行多条SQL语句时,如果其中一条SQL执行错误,则需要回退到最开始的地方,保证业务逻辑的正确性和业务的完整性,比如转账业务;事务可以完成回退的功能,在事务中该回退被称为回滚。

1.2 事务Tansaction的定义

  • 事务是一个操作序列;该操作序列要么都做,要么都不做,即是一个不可分割的工作过程单元,是数据库环境中的逻辑工作单位。
  • 事务在数据的增删改时才会适用;
  • 事务的本质是加了锁,进程锁。因此,事务在必要时才加。

2 事务语句

2.1 事务操作流程

  • 开启事务begin
  • 提交事务commit
  • 回滚 rollback

2.2 案例 – 以银行转账业务入例:

python之SQL事务_第1张图片
适用begin开始事务;
在执行后续SQL时,表中的数据不会改变。
当成功执行完commit之前的所有SQL语句后,表中的数据才会改变。
当begin到commit之前的SQL语句执行错误时,需要调用roolback对事务进行回滚。
注意:在一个进程对一个表开启了事务,另一个进程再该表的数据进行修改时,会等待前一个进程完成事务后,才会对表进行操作。

你可能感兴趣的:(学习记录,python,sql)