位置: 编程技术 - 正文

浅谈Yii乐观锁的使用及原理(乐观锁用法)

编辑:rootadmin

推荐整理分享浅谈Yii乐观锁的使用及原理(乐观锁用法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:乐观锁实例,乐观锁的作用,乐观锁会存在什么问题,乐观锁一定就是好的吗?,乐观锁一定就是好的吗?,乐观锁一定就是好的吗?,乐观锁的两种实现方式,乐观锁的作用,内容如对您有帮助,希望把文章链接给更多的朋友!

本文介绍了Yii乐观锁的使用及原理,自己做个学习笔记,也分享给大家,希望对大家有用处

原理:

数据表中使用一个int类型的字段来存储版本号,即该行记录的版本号。更新数据时,对比版本号是否一致

sql查询代码如下(伪代码)

即在更新时的where查询条件中,带上之前查询记录时得到的版本号,如果其他线程已经修改了该记录,则版本号势必不会一致,则更新失败

示例

数据表

假设有如下数据表

浅谈Yii乐观锁的使用及原理(乐观锁用法)

模型类

appmodelsTestVer

该模型类,重写BaseActiveRecord类中的optimisticLock方法

声明用于记录版本号的字段

updateRecord修改id为1的记录

控制器

控制器中调用updateRecord方法

Yii Debugger结果

查看database选项,可以查看到实际执行的sql语句。

有一条语句如下

Yii乐观锁实现原理

实现原理在yiidbBaseActiveRecord::updateInteranl()方法

从上面的代码中,我们不难得出:

当 optimisticLock() 返回 null 时,乐观锁不会被启用。 版本号只增不减。 通过乐观锁的条件有2个,一是主键要存在,二是要能够完成更新。 当启用乐观锁后,只有下列两种情况会抛出 StaleObjectException 异常: 当记录在被别人删除后,由于主键已经不存在,更新失败。 版本号已经变更,不满足更新的第二个条件。

标签: 乐观锁用法

本文链接地址:https://www.jiuchutong.com/biancheng/291023.html 转载请保留说明!

上一篇:浅谈PHP发送HTTP请求的几种方式

下一篇:深入理解Yii2.0乐观锁与悲观锁的原理与使用(深入理解llvm)

  • 购买车辆保险的报告
  • 教育附加税税率多少?
  • 生产设备改扩建会计分录
  • 公司基本户里的钱有利息吗
  • 金蝶k3如何设置凭证保存自动新增
  • 个人捐赠支出税前扣除条件
  • 增值税发票认证平台
  • 工会经费应税项怎么算
  • 有社保的工资计提和发放
  • 取得经营所得需要纳税人自行申报嘛
  • 如何在房产证上加父母名字
  • 行政事业单位工资标准
  • 注册资本未到位转让股权
  • 旧设备进口关税
  • 3%的增值税专用发票可以退税吗可以抵扣吗
  • 如果公司没有报税
  • 增值税没达到起征标准
  • 企业出口产品条件和流程
  • 归属于母公司的净利润怎么来的?
  • 净资产怎么算的 视频
  • 定期定额征收的个体户怎么报税
  • 如何编制处置固定资产
  • 车辆交通罚款怎样避免重复报销
  • 【Fiddler Everywhere】史上最强抓包工具(安装 修改教程)
  • exedown是什么文件夹
  • 增值税红字专用发票什么意思
  • 计量差错引起的盘亏
  • 以下关于static
  • yolov5输出result
  • php正则表达式匹配链接
  • javascript背景图片怎么导入
  • Yii2中使用asset压缩js,css文件的方法
  • lpstat命令
  • 提取现金准备发放工资
  • 物流破损拒收的理由
  • 企业向个人借款利息如何缴纳增值税
  • 所得税汇算会计处理
  • php安装不了
  • 小企业销售商品时,确认收入的标志有
  • 发票的类型分为哪几类
  • 补发以前年度工资怎么做账
  • 个体户定额征收后还要报税吗
  • 出口企业有哪些税收
  • 对于在某一时点履行的履约义务,企业应当在客户
  • 固定资产减值核销
  • 成本类科目在哪里列式
  • 为什么预付账款可以通过应付账款核算
  • 个人所得税个人申报和公司申报区别
  • 收到固定资产怎么做账
  • 记账凭证的分类及每类的具体含义是什么
  • 工会经费是什么凭证
  • mysql的全文索引的用处
  • centos6.9关闭防火墙命令
  • 怎么提高windows7性能
  • win10收不到短信验证码
  • windows的fn键
  • ubuntu下软件
  • ubuntu20.10安装教程
  • macos 音量快捷键
  • xp系统不能正常启动怎么修复
  • linux网络设备有哪些
  • 安卓十游戏怎么玩
  • python购物车100行代码
  • 什么叫真游戏
  • html标签自动换行
  • xp启动项 命令
  • 快速备份mysql数据库
  • 网页中经常用到的代码
  • js获取上传文件的文件名
  • unity接收数据
  • bootstrap按钮的风格有哪些?
  • java clone用法
  • aiclod
  • js拖拽排序实现思路
  • 12366纳税服务热线存在的问题
  • 通州区税务局办税大厅电话号码
  • 国家税务总局好进吗
  • 企业所得税季报资产总额怎么填
  • 重庆税务信息采集如何操作
  • 停车场收费需要什么手续
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设