它的语句能确保被DML语句影响的表的所有行及时得以更新。TPL语句包括BEGIN TRANSACTION,COMMIT和ROLLBACK。
如果第一条语句执行后(成功),在执行第二条语句之前,程序被中断(可能会出现异常)
特点: 要么成功,要么失败
事务的特性(ACID)面试:
1.原子性-----》事务中所有的操作不可分割
2.一致性----》事务执行后,数据库中状态要和业务规则保持一致
3.隔离性:
一个事务的执行不能其它事务干扰。即一个事务内部的操作及使用的数据对其它并发事务是隔离的,并发执行的各个事务之间不能互相干扰。
4.持久型:一旦事务提交成功,事务中所有的数据操作都必须被持久化在数据库中
mysql中开启和关闭事务
开启:
start transaction tag
关闭:
commit(提交)----事务将对条执行的sql语句持久化到数据库中
rollback(回滚)----回滚到事务开始的起点
数据库的引擎-----innoDB myMYISAM
创建一个用户:
create table if not exists account(id int(11) not null auto_increment primary key,uesrname varchar(32)not null,money float(9,2))engine=innodb;
insert into account values(1,‘zs’,10000),(2,‘lisi’,10000),(3,‘ww’,10000);