数据库事务

来源:互联网 发布:淘宝卖假货运动店铺 编辑:程序博客网 时间:2024/05/22 02:10

1、事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。


2、事务和程序比较
在关系数据库中,一个事务可以是一条或一组SQL语句,也可以是整个程序。
一个程序通常包含多个事务。

3、显式定义方式

begin transaction

SQL语句1

SQL语句2

。。。

commit

begin transaction

SQL语句1

SQL语句2

。。。

roolback

隐式定义方式:当用户没有显式地定义事务,DBMS按缺省规定自动划分事务


4、事务的特性(ACID特性)

原子性 (Atomicity):事务是数据库的逻辑工作单位,事务中包括的各个操作要么都做,要么都不做。
一致性 (Consistency):事务执行的结果必须是使数据库从一个一致状态变到另一个一致状态。当数据库只包含成功事务提交的结果时,就说数据库处于一致状态。
隔离性 (Isolation):一个事务的执行不能被其他事务干扰。一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。

持续性 (Durability):持续性也称永久性,指一个事务一旦提交,它对数据库中数据的改变就应该是永久的,接下来的其他操作或故障不应该对其执行结果有任何影响。

0 0