相关文章推荐
温暖的硬盘  ·  IllegalArgumentExcepti ...·  1 年前    · 
逼格高的打火机  ·  thinkphp 内置标签--循环 - ...·  1 年前    · 
纯真的橙子  ·  System.Threading.Timer ...·  2 年前    · 
坏坏的雪糕  ·  一个小技巧提升 OkHttp ...·  2 年前    · 
沉着的苦咖啡  ·  BAT:获取注册表的值 - 郎家岭伯爵 - 博客园·  2 年前    · 
Code  ›  设置事务超时时间的问题及Oracle数据库update和锁开发者社区
https://cloud.tencent.com/developer/article/1688822
喝醉的哑铃
1 年前
用户5546570

设置事务超时时间的问题及Oracle数据库update和锁

前往小程序,Get 更优 阅读体验!
立即前往
腾讯云
开发者社区
文档 建议反馈 控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
发布
首页
学习
活动
专区
工具
TVP 最新优惠活动
返回腾讯云官网
用户5546570
首页
学习
活动
专区
工具
TVP 最新优惠活动
返回腾讯云官网
社区首页 > 专栏 > 设置事务超时时间的问题及Oracle数据库update和锁

设置事务超时时间的问题及Oracle数据库update和锁

作者头像
用户5546570
发布 于 2020-08-28 11:56:31
2.1K 0
发布 于 2020-08-28 11:56:31
举报
文章被收录于专栏: 以Java架构赢天下 以Java架构赢天下

写在前面:2020年面试必备的Java后端进阶面试题总结了一份复习指南在Github上,内容详细,图文并茂,有需要学习的朋友可以Star一下! GitHub地址: https://github.com/abel-max/Java-Study-Note/tree/master

Oracle的update语句问题:

代码语言: javascript
复制
update config t set t.value =1 where t.key='DB_ KEY'

或者:

代码语言: javascript
复制
select * from config t where t.key='DB_KEY' for update

这个update会试图为where条件指定的那些数据加上行级锁,但如果此时这些数据已经被其他事务加锁了,则会一直等待,直到锁被释放,然后再去竞争这些数据的锁。

问题是,我不想让它一直等待,如果加不上锁就立即返回失败信息。对于select ... for update语句,可以用如下方式:

代码语言: javascript
复制
select ... for update nowait(加锁失败则立即报错)
 
推荐文章
温暖的硬盘  ·  IllegalArgumentException: non null key required - CSDN文库
1 年前
逼格高的打火机  ·  thinkphp 内置标签--循环 - mmzz3322 - 博客园
1 年前
纯真的橙子  ·  System.Threading.Timer 定时器的用法 - wisdo - 博客园
2 年前
坏坏的雪糕  ·  一个小技巧提升 OkHttp 请求稳定性-腾讯云开发者社区-腾讯云
2 年前
沉着的苦咖啡  ·  BAT:获取注册表的值 - 郎家岭伯爵 - 博客园
2 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号