锁表原因及解决思路 Oracle做insert或者update时未提交事务导致表锁定
https://www.cnblogs.com/xinruyi/p/11518531.html
1、锁表发生在insert update 、delete 中
2、锁表的原理是 数据库使用独占式封锁机制,当执行上面的语句时,对表进行锁住,直到发生commite 或者 回滚 或者退出数据库用户
3、锁表的原因
第一、 A程序执行了对 tableA 的 insert ,并还未 commite时,B程序也对tableA 进行insert 则此时会发生资源正忙的异常 就是锁表
第二、锁表常发生于并发而不是并行(并行时,一个线程操作数据库时,另一个线程是不能操作数据库的,cpu 和i/o 分配原则)
4、减少锁表的概率
1》减少insert 、update 、delete 语句执行 到 commite 之间的时间。具体点批量执行改为单个执行、优化sql自身的非执行速度
2》如果异常对事物进行回滚
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
2021-03-29 把一个十六进制的字符串(包含0x或0X)转化成对应的数值 ASCII码
2021-03-29 为什么0-9转化成字符是+0x30,11转化成A是+0x37?
2021-03-29 oracle修改数据库字段长度
2021-03-29 表添加字段的SQL语句写法
2021-03-29 在数据表中添加一个字段的SQL语句怎么写-百度
2021-03-29 oracle创建表增加字段sql脚本,字段说明注释
2021-03-29 sql 数据库表如何添加字段-MySQL