对事务有一定的了解,需要看隔离级别的请拉到最下。
事务简单说明
一个或一组sql语句组成一个执行单元,这个执行单元要么全部执行,要么全部不执行,这样的一个执行单元叫做事务。
案例:转账
现在有两个银行账户,账户A(后面称为A)拥有100元,账户B(后面称为B)拥有100元。
此刻需要让B转账给A 50元。则正确流程应该是B先扣50元后,A增加50元。这种操作叫做事务。
不加事务产生后果:B扣钱后,A未增加钱。或者A增加钱,B未扣钱。
事务的acid属性:
1.原子性:一个事物内部所有操作不可在分割,要么都执行要么都不执行
2.一致性:事务必须使数据库中的数据从一个一致状态变换到另外一个一致性状态
3.隔离性:各个事务之间的操作互不干扰(根据隔离级别定)
4.持久性:一旦一个事务被提交,它对数据库中数据的改变是永久性的,比如删除一条数据,一旦删除成功就没法恢复。
支持事务的数据库引擎:
以MySQL为例子。
通过show engi