您的位置:首页 > 数据库

sqlserver 锁以及事务

2017-06-17 22:12 141 查看
1,事务的基本特征:(acid原子性,一致性,隔离性,持久性);

2,四种错误问题:(脏读,不可重复读,幻读,重复读);

3,事务的隔离级别以及对应问题:

a,ReadUncommitted:有脏读、不可重复读和幻读的情况发生;

b,ReadCommitted:有不可重复读、幻读和重复读的情况发生;

c,Repeatable:有幻读情况发生;

d,Serializable:不会有问题

e,Snapshot:乐观锁的方式实现,会在Tempdb中创建副本,避免脏读和不可重复读;

4,锁分为行级锁、表级锁以及页锁;

5,对于大表如非必要不增加非空字段;若定要添加,则先初始化字段,后修改为非空;

6,nolock相当于ReadUncommitted,提高并发性能,会添加Sch-S锁,用以确保表结构不会被改变;故nolock要慎用,适用于非频繁变更的表以及可忍受脏读的表;

如有什么问题,请回帖共同探讨!

6,nolock相当于ReadUncommitted,提高并发性能,会添加Sch-S锁,用以确保表结构不会被改变;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: