1、UPDATE nowait 应用以下场景:查询某条数据,并对其开启数据库事务。如果查询的当前数据没有加锁,则正确返回结果,并对当前数据加锁,如果查询的当前数据已在事务中,已加锁。但返回异常信息:提示数据已加锁。SQL语句:
Sql代码:
复制代码 代码如下:
SELECT *
FROM hold_mc_site_product_pic pic
WHERE pic.id = 730127 FOR UPDATE nowait
2、应用在多线程并发的情况下。先查询出要处理的数据,并加入数据库级的锁,处理完后,写入数据库。提交事务。可以有效控制并发情况下数据的一致性。
您可能感兴趣的文章:- ORACLE SQL-UPDATE、DELETE、INSERT优化和使用技巧分享
- sqlserver中delete、update中使用表别名和oracle的区别
- oracle执行update语句时卡住问题分析及解决办法