SQL Server --数据库保护 (事务)
事务
事务是用户定义的数据操作系列,可以是一个或多个sql 语句 也可以是控制多个程序
例如:A转钱给B n 元钱
第一个动作:A账户-n
第二个动作:B账户+n
假设第一个动作完成了,但第二个动作由于某种原因没有成功,比如断电,那么在系统恢复运行后,
A账户的金额是-n之前的还是之后的或者如果B的值没变
确保正确执行就需要用到事务的概念。
标记事务的开始与结束
事务的开始标记不完全一样
事务的结束标记有二个:
- 正常结束,用COMMIT提交表示,也就是事务中的所有操作都将成为永久操作;
- 异常结束,用ROLLBACK,事务中的操作都会被全部撤销,数据库回到开始之前的状态
事务的特性
SQL 事务处理模型
事务有二种类型:
- 显式事务
- 隐式事务
区别就是是否有特定的关键词开头和结束标志
1 ISO 事务处理模型
2 T-SQL 事务处理模型