事务:
一个或一组sql语句组成的执行单元,这个执行单元要么全执行,要么全不执行。
事务的acid属性
1.原子性:指的是事务是一个不可分割的单位,事务中的操作要么都发生,要么都不发生。
2.一致性:事务必须是数据库从一个一致性的状态变换到另外一个一致性的状态。
3.隔离性:事务的隔离性是指,一个事务的执行不能被其它的事务干扰,就是一个事务的内部操作及使用的数据对并发的其它事务是隔离的并发执行的事务之间不能互相干扰。
4.持久性:持久性是指事务一旦提交,它对数据中的数据的改变是永久性的接下来的其它操作和数据库故障不应该对其有任何影响。
事务的创建
隐式的事务:事务没有明显的开启和结束的标记。例如:insert update delete 语句
显示事务:事务具有明显的开启和结束的标记。
前提:必须要关闭自动提交功能为禁用。只针对当前的语句有效。
步骤一:
set autocommit=0;
start transaction;可选的
步骤二:编写事务中的sql语句(select insert update delete)
语句1;0
语句2;
步骤3结束事务;提交事务或者回滚事务;
commit;rollback;