PLSQL使用for update编辑数据库的坑

本文讲述了在使用PLSQL进行数据库操作时遇到的问题,由于使用`for update`查询导致事务未提交,进而阻塞了后续的前端删除操作。作者通过排查发现,即使未对查询结果进行修改,`for update`也会开启事务。解决方案是使用不锁定的查询,只在实际修改时提交事务。最后,解释了`for update`的执行机制及其可能引发的资源忙错误。
摘要由CSDN通过智能技术生成
问题出现的场景

今天有个需求是对数据库中一张表进行相关的CRUD操作,刚开始的时候操作都没有,知道我测试删除功能的时候,页面点击删除没有任何反应。

问题追踪

使用debug模式启动项目,并且在删除逻辑开始的地方打上断点,在前端点击相关的删除按钮,后台并没有进入断点。由此得到可能是前端页面请求出现了错误。于是打开Chrome的开发者工具选到Network,查看那个删除的ajax请求信息。 结果如下:
在这里插入图片描述
遇到问题先问一波度娘,但是网上大多数的答案都是什么ajax请求跨域什么的,但是我本地跑的项目压根就没有跨域的场景,前后端都是一起的。于是放弃百度,回忆自己在这之前所做的操作。

找到问题

在做删除功能之前我是先做的新增的功能于是数据库中存在了很多不符合规定的数据。于是我使用的plsql对数据进行删除。具体的删除方法如下:

  • 步骤一:
    使用plsql中查询语句查询出所有数据。
select a.* from BPM_WISDOMINSPECT_BIDEXPERT a
order <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值