• 事务是在数据库上按照一定逻辑顺序执行的任务队列,既可以由用户手动执行,也可以由某种数据库程序自动执行
  • 事务的属性
    • A原子性:保证事务中所有操作都执行完毕,否则,事务会在出现错误时终止,并回滚到之前所有操作原始状态
    • C一致性:如果事务成功执行,则数据库的状态得到了正确的转变
    • I隔离性:保证不同的事务相互独立,透明的执行
    • D持久性:即使系统出现故障,之前成功执行的事务的结果也会持久存在
  • 事务控制
    • COMMIT:提交更改
    • rollback:回滚更改
    • save:在事务内部创建一系列可以rollback的还原点
  • 事务举例
    • BEGIN TRANSACTION --表示开始一个事务
    • select * from CustomersHis;
    • delete from CustomersHis where 姓名 ='张三';
    • select * from CustomersHis;
    • .
    • commit;
    • rollback
  • 事务一旦开始,但是没有commit或rollback,当新建另外一个关于此表格的查询时,则会被阻塞,查不出结果
  •