2020年10月7日:
关于JDBC中的事务:
一、什么是事务:
事务就是一组原子性的SQL查询,或者说一个独立的工作单元。
如果数据库引擎能够成功的对数据库应用该组查询的全部语句,那么久执行该组查询。如果其中有任何一条语句因为崩溃或其他原因无法执行,那么所有的语句都不会执行,就是说,事务内的语句,要么全部执行成功,要么全部执行失败。
自动事务
执行sql后,直接写入数据库。默认事务是自动提交,也可使用手动事务。
查看事务设置:show variables like 'autocommit';
注意: 一旦自动事务关闭,那么需要用户提供是否同步的命令
commit:提交(同步到数据表:事务也会被清空)
rollback:回滚(清空之前的操作,不要了)
事务没有提交的对比查看:在执行事务端的客户端中,系统在进行数据查看的时候会利用事务日志中保存的结果对数据进行加工。
手动事务
事务处理:执行的sql
事务提交:commit/rollback,到这个时候所有的事务才算结束
回滚点
当有一系列事务操作时,而其中的步骤如果成功了,没有必要重新来过,可以在某个点,设置一个记号,然后如果后面有失败,那么可以回到这个回滚点
增加回滚点:savepoint name;
回到回滚点:rollback to name;