事务是数据库应用中和重要的工具,它有原子性、一致性、隔离性、持久性这四个属性,很多操作我们都需要利用事 务来保证数据的正确性。在使用事务中我们需要做到尽量避免死锁、尽量减少阻塞。具体以下方面需要特别注意:
1、事务操作过程要尽量小,能拆分的事务要拆分开来。
2、 事务操作过程不应该有交互,因为交互等待的时候,事务并未结束,可能锁定了很多资源。
3、 事务操作过程要按同一顺序访问对象。
4、 提高事务中每个语句的效率,利用索引和其他方法提高每个语句的效率可以有效地减少整个事务的执行时间。
5、 尽量不要指定锁类型和索引,SQL SERVER 允许我们自己指定语句使用的锁类型和索引,但是一般情况下,SQL SERVER 优化器选择的锁类型和索引是在当前数据量和查询条件下是最优的,我们指定的可能只是在目前情况下更有,但是数 据量和数据分布在将来是会变化的。
6、 查询时可以用较低的隔离级别,特别是报表查询的时候,可以选择最低的隔离级别(未提交读)。