举个例子更能容易理解:
加入有多个sql语句(insert,update,del等等)
要一块执行,
比如说,创建一个用户,需要操作三个表,三个sql.
sql1:='insert.....';
sql2:='insert table2...';
sql3:='insert table3...';
假如不加事务, 到sql1,sql2都执行通过,但是sql3 执行错误了..
就有可能造成数据库的相关数据不同步.
这时候就需要加个事务
事务开始
sql1:='insert.....';
sql2:='insert table2...';
sql3:='insert table3...';
事务提交
如果中间发生意外,就事务回滚...
除非三个sql都执行通过,事务提交后,所有的数据才最终写入数据库,
如果任何一条sql执行错误, 事务回滚,, 前面操作成功的sql也将无效.
所有数据都不会写入库. 保证数据库各个表数据一致.
这就是事务.
加入有多个sql语句(insert,update,del等等)
要一块执行,
比如说,创建一个用户,需要操作三个表,三个sql.
sql1:='insert.....';
sql2:='insert table2...';
sql3:='insert table3...';
假如不加事务, 到sql1,sql2都执行通过,但是sql3 执行错误了..
就有可能造成数据库的相关数据不同步.
这时候就需要加个事务
事务开始
sql1:='insert.....';
sql2:='insert table2...';
sql3:='insert table3...';
事务提交
如果中间发生意外,就事务回滚...
除非三个sql都执行通过,事务提交后,所有的数据才最终写入数据库,
如果任何一条sql执行错误, 事务回滚,, 前面操作成功的sql也将无效.
所有数据都不会写入库. 保证数据库各个表数据一致.
这就是事务.
1122

被折叠的 条评论
为什么被折叠?



