一、为什么要引入锁

多个用户同时对数据库的并发操作时会带来以下数据不一致的问题:

丢失更新:A,B两个用户读同一数据并进行修改,其中一个用户的修改结果破坏了另一个修改的结果,比如订票系统

脏读:A用户修改了数据,随后B用户又读出该数据,但A用户因为某些原因取消了对数据的修改,数据恢复原值,此时B得到的数据就与数据库内的数据产生了不一致

不可重复读:A用户读取数据,随后B用户读出该数据并修改,此时A用户再读取数据时发现前后两次的值不一致

并发控制的主要方法是封锁,锁就是在一段时间内禁止用户做某些操作以避免产生数据不一致

二、锁的种类

从整个数据库应用系统编程者角度说,锁分为两类:

1 乐观锁

2 悲观锁

乐观锁的含义是:指望DBMS自动完成所有的锁操作、且结果理想,程序员根本不知道锁的存在;而悲观锁则完全相反:

<

SQL Server数据库锁的类型、用法及注意事项详解相关推荐

  1. SQL Server数据库锁机制及类型

    SQL Server数据库锁机制及类型 [06-05 12:08:14]作者:责任编辑:heyaorong Microsoft SQL Server(以下简称SQL Server)作为一种中小型数据库 ...

  2. SQL Server中CROSS APPLY和OUTER APPLY的应用详解

    SQL Server数据库操作中,在2005以上的版本新增加了一个APPLY表运算符的功能.新增的APPLY表运算符把右表表达式应用到左表表达式中的每一行.它不像JOIN那样先计算那个表表达式都可以, ...

  3. SQL Server数据库关于bak类型文件的备份与还原

    注:本文只做最简单流程描述,欢迎留言补充.谢谢 Thanks♪(・ω・)ノ 涉及工具软:SQL Server Management Studio 并且假装已经连接到相关数据库. 一.数据备份 1.右键 ...

  4. [转]Sql Server参数化查询之where in和like实现详解

    本文转自;http://www.cnblogs.com/lzrabbit/archive/2012/04/22/2465313.html 文章导读 拼SQL实现where in查询 使用CHARIND ...

  5. oracle和sql server取第一条记录的区别以及rownum详解

    我们知道学生可能有重名的情况,那么当重名的时候假设只需要取得重名结果集中的第一条记录. sql server:select top(1) num,Name from M_Student where n ...

  6. SQL server 数据库 修改字段类型

    alter table 表名 alter column 字段名称 类型 not null

  7. [转载]在SQL Server数据库之间进行数据导入导出,OPENDATASOURCE

    需要在c盘下先建立一个data.txt文件,然后在文件的第一行写上你要导出的列,不如说要导出id和name这两列,就在第一行写上 id,name 然后保存,使用下列SQL就可以了,你如果要保持原有的I ...

  8. 在SQL Server数据库之间进行数据导入导出

    来源:http://kb.cnblogs.com/page/94464/ 在SQL Server数据库之间进行数据导入导出 (1).使用SELECT INTO导出数据 在SQL Server中使用最广 ...

  9. SQL Server 数据库中的几个常见的临界值

    本文出处:http://www.cnblogs.com/wy123/p/6709520.html 1,SQL语句或者存储过程的最大长度(SQL字符串容量)是多少? 经常有人问,我的SQL语句是拼凑出来 ...

最新文章

  1. Deeplearning知识蒸馏
  2. 视觉计算理论简介【转】
  3. Visual Studio 2017 UTF-8 无 BOM 一站式解决办法
  4. VTK:图片之ImageThreshold
  5. mysql 多张表公用一个序列_Mysql--序列3--分库分表策略
  6. Shell编程中Shift的用法(转)
  7. 如何保持纯洁男女关系……
  8. 【Pytorch神经网络理论篇】 30 图片分类模型:Inception模型
  9. IDEA:将web工程部署到tomcat
  10. config.class.php,The EventConfig class - PHP 7 中文文档
  11. 【LOJ#6036】[雅礼集训2017Day4]编码
  12. 【Django 2021年最新版教程23】2个日期相减 计算天数 xxxx-xx-xx格式
  13. 在Linux上安装和配置CSF防火墙
  14. css绘制卡券优惠券_如何使用css创建一个优惠券
  15. Risk Management and Financial Institution Chapter 9 —— Interest Rate Risk
  16. uWSGI和Gunicorn
  17. 【Spring Boot】——集成JSON工具
  18. 阅读记录-统计你的每一次读书和笔‪记
  19. 2017146期计算机开机号,[彩吧]福彩3D17147期开机号103
  20. 团体程序设计天梯赛--个人总结

热门文章

  1. .NET 深度指南:Colors
  2. Windows 10 版本 21H2 正式发布
  3. 通过Dapr实现一个简单的基于.net的微服务电商系统(五)——一步一步教你如何撸Dapr之状态管理...
  4. 如何看待 70% 的程序员,缺乏数据结构和算法知识?
  5. OSI强调:SSPL并不是开源许可证
  6. 用asp.net core结合fastdfs打造分布式文件存储系统
  7. (四)开源C# WPF控件库《AduSkin – UI》
  8. 如何优雅地替换一个实现
  9. 基于Masstransit实现Eventbus的功能
  10. 【翻译】Keras.NET简介 - 高级神经网络API in C#