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锁,用以确保表结构不会被改变;
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锁,用以确保表结构不会被改变;
相关文章推荐
- SQLServer中事务日志已满的原因以及解决办法
- 使用Sqlserver事务发布实现数据同步(sql2008)
- sqlserver 查看进程以及查看死锁代码
- SqlServer 并发事务:死锁跟踪(一)简单测试
- ORA-01591: lock held by in-doubt distributed transaction 以及分布式事务处理总结
- 微软企业库5.0学习笔记(三十五)数据访问模块 DataSet以及数据库事务
- 异地 定时 同步 部分 数据 的事务 存储过程 以及触发器
- sqlserver数据以及日志文件的设置小结
- Mysql转换成SqlServer数据库,以及SqlServer转换成Mysql数据库
- 查看sqlserver被锁的表以及如何解锁
- Spring事务管理配置以及异常处理
- yii2 + mysql 常用增删改查操作语法以及事务
- MySQL事务以及隔离级别
- SQLServer事务的隔离级别
- 临时表vs.表变量以及它们对SQLServer性能的影响
- MySQL子查询的使用,事务与事务隔离级别,以及DML数据控制语言的使用解析。
- Spring事务总结---传播级别以及REQUIRED_NEW及NESTED的使用场景(赞)
- 事务是什么,以及事务四个特性
- sqlserver 2000事务复制问题
- sqlserver事务、异常和游标*