1、update table set value = newValue ,vision = vision + 1 where id = #{id} and vision = #{vision}

乐观锁 版本号机制

如果不加版本号vision,语句是这样的

update table set value = newValue  where id = #{id}

操作员A和B同时取出原有的value,然后A先存新的value,B再存新的value时会覆盖A保存的value。

而使用乐观锁vision时

当vision=1时,操作员A和B同时取得原有vision=1,当A保存成功时,vision变成2。B保存时发现没有满足“where id = #{id} and vision = 1 ”的结果,保存失败。

2、update table set stock=stock-1 where id = #{id} and stock>0

防止库存不足时的超卖,也是基于数据库的乐观锁

加上stock > 0,就能保证不会出现超卖的情况。

并发常用的2个SQL语句相关推荐

  1. 常用和实用的sql语句

    前言 在工作有一段时间了,对于sql不能说得心应手,但是也更加的熟练,当然,为了方便自己后续的开发以及方便自己查找,在这里我会整理出一份关于sql的实用的sql语句,如遇到没有写在这里,后续又遇到的s ...

  2. SQL Server 常用近百条SQL语句(收藏版)

    1. sqlserver查看实例级别的信息,使用SERVERPROPERTY函数 select SERVERPROPERTY ('propertyname') 2. 查看实例级别的某个参数XX的配置 ...

  3. 数据库常用增删改查sql语句(二)

    比较运算符 > < >= <= = !=和<> 查询工资大于等于3000的员工姓名,工资和工作 select name,sal,job from emp where ...

  4. 常用的数据库统计SQL语句(2)

    1.解决被零除(零做除数时) --来自百度问吧 在统计系统中,需要求百分数, 如(sum(baseprice)-sum(quote))/sum(baseprice)*100)中, 如果sum(base ...

  5. 常用的数据库统计SQL语句

    1.解决被零除(零做除数时) --来自百度问吧 在统计系统中,需要求百分数, 如(sum(baseprice)-sum(quote))/sum(baseprice)*100)中, 如果sum(base ...

  6. 数据库常用增删改查sql语句(一)

    数据库相关SQL: 查询所有数据库:show databases:show databases: 创建数据库:create database 数据库名 charset = utf8 /gbk: 查看数 ...

  7. 走向DBA[MSSQL篇] 从SQL语句的角度 提高数据库的访问性能

    最近公司来一个非常虎的dba  10几年的经验 这里就称之为蔡老师吧 在征得我们蔡老同意的前提下  我们来分享一下蔡老给我们带来的宝贵财富 欢迎其他的dba来拍砖 目录 1.什么是执行计划?执行计划是 ...

  8. insert exec 语句不能嵌套_走向DBA「MSSQL篇」 - 从SQL语句的角度提高数据库的访问性能...

    最近公司来一个非常虎的DBA,10几年的经验,这里就称之为蔡老师吧,在征得我们蔡老同意的前提下 ,我们来分享一下蔡老给我们带来的宝贵财富,欢迎其他的DBA来拍砖. 目录 1.什么是执行计划?执行计划是 ...

  9. 精典的SQL语句(转)

    1. 行列转换--普通 假设有张学生成绩表(CJ)如下 Name     Subject      Result 张三     语文         80 张三     数学         90 张 ...

最新文章

  1. 最新离婚大数据曝光:所有的分手,都是蓄谋已久
  2. java根据enum某个属性值获取枚举项
  3. 那些常见的Web前端学习误区分享
  4. mysql5.6数据库位置_MYSQL5.6数据库存放位置
  5. 阿里云 云服务器ECS(CentOS 8.0 64位) 安装 MySQL 数据库
  6. 俄罗斯方块控制台程序C++
  7. redis-CacheCloud
  8. 机器学习-Numpy的学习
  9. Sicily 1094 Cude解题报告
  10. photoshop cs4 注册
  11. loadrunner中关联到的信息需要拼接时的例子-订飞机票
  12. 致歉信:拖更两天抱歉了
  13. Kafka源码研究--Comsumer获取partition下标
  14. 硬件断点和软件断点的区别
  15. 算法面试题(格灵深瞳)
  16. 一语成金,说透管理,点透人生!
  17. 洛谷 P2357 守墓人
  18. font-face 自定义字体
  19. MTK SPI驱动开发
  20. 引水工程 Kruskal + Prim

热门文章

  1. VS 2008 Express
  2. 淘宝API 商品详情接口 - 外贸多语翻译商品详情店铺分类开放平台接口
  3. 【解决The package java.awt is not accessible】
  4. oracle 汉化包配置,Oracle Application Express安装与中文语言包配置
  5. Win8.1+VS2013+WDK8.1+VirtualBox or VMware 驱动开发环境配置
  6. 塞班S60V3通用UCWEB7.0正式版SISX安装包下载
  7. 恭贺象过河软件在郑州市场3年内突破2000家用户
  8. DICOM3.0标准梳理
  9. ucinet网络分析教程
  10. DT大数据梦工厂免费实战大数据视频全集 分享