目录
1:事务的概念
事务 是一组操作的集合,它是一个不可分割的工作单位。事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作 要么同时成功,要么同时失败。
举个例子吧:就用老师上课的时候的例子,有两个表一个是部门表,一个是员工表,部门表和员工表之间的关系是1:n,当你删除一个部门之后,对应部门的员工也得被删除
因为这个是两条sql语句,所以,当你同时选中并且执行的时候,如果删除部门的sql语句成功了,对应部门的员工的删除sql语句没有成功,那就会在两个表中起到错误。
所以这个事务就应运而生,类似与把这两个sql语句绑定在一起执行,要不然都成功,要不然都失败
2:事务的操作
开启事务:start transaction; / begin ;
提交事务:commit;
回滚事务:rollback;
想运行事务,在sql语句之前先开启事务,
start transaction; / begin
然后下面运行sql语句
sql:--------;
然后下面有两个选择
commit和rollback
当你的sql都写成功了再commit,这个时候数据库中的数据就被修改了
如果有错就rollback。
3:事务四大特性:
原子性:事务是不可分割的最小单元,要么全部成功,要么全部失败
一致性:事务完成时,必须使所有的数据都保持一致状态
隔离性:数据库系统提供的隔离机制,保证事务在不受外部并发操作影响的独立环境下运行
具体说一下这隔离性把,就是当你开启了事务,并且在操作(就是在编写正确的sql语句),反正还没有提交或者回滚的时候
其他人从外部是看不到这个数据库的改变的
数据库隔离级别越高,数据越安全。
感觉对MySql事务这个东西的理解还很浅,等我以后多用用再来补充把-2024-04-06