Oracle中,"执行Update语句"实际是什么锁?
2013-05-19
展开全部
DML锁原因如下:Oracle主要有2种锁:DDL锁(字典锁)、DML锁(数据锁)。当用户发布DML(Data Manipulation Language)语句(如insert、update、delete)时会对涉及的对象加DML锁。由于DML语句涉及的是数据操作,所以该锁也被称为数据锁。当用户发布DDL(Data Definition Language)语句时会对涉及的对象加DDL锁。由于DDL语句会更改数据字典,所以该锁也被称为字典锁。详情请参考 http://book.csdn.net/bookfiles/188/1001888649.shtml
推荐于2018-05-07
展开全部
DML操作一个会话只会产生一个事务锁(TX),对每个对象只产生一个表锁(TM),在不同的会话中可以对同一个对象产生多个TM锁。
还有在执行dml操作中即使删除空行也会产生TX锁,同时伴随TM锁,但是更新空行只会产生TX锁,不会产生TM锁。
还有在执行dml操作中即使删除空行也会产生TX锁,同时伴随TM锁,但是更新空行只会产生TX锁,不会产生TM锁。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询