Record is locked by another user --Oracle行锁解锁

Oracle修改表中记录时出现record is locked by another user的问题

在操作表时没有commit,导致表被锁,只要执行下面两行语句,就可以了将行锁解锁了。

  1. Select t2.username,t2.sid,t2.serial#,t2.logon_time
  2. from v$locked_object t1,v$session t2
  3. where t1.session_id=t2.sid;

-- 查看被锁表的sid 和 serial#

2. 
alter system kill session ‘sid, serial#‘;

-- kill 锁
,例如输入 alter system kill session ‘140,
25‘;

执行完以上两步后,就可以编辑数据了。

来源: <Record is locked by another user --Oracle行锁解锁_张子子_新浪博客>

来自为知笔记(Wiz)

时间: 2024-10-10 08:55:08

Record is locked by another user --Oracle行锁解锁的相关文章

MySQL和Oracle行锁比较

有人问,MySQL里Update时条件列没有索引,产生的是表级锁,而Oracle里是行级锁. 下面来对比下MySQL INNODB引擎和Oracle的行锁机制: INNODB INNODB表是索引组织的表,主键是聚集索引,非主键索引都包含主键信息. INNODB默认是行锁. INNODB行锁是通过给索引项加锁来实现的,即只有通过索引条件检索数据,InnoDB才使用行级锁,否则将使用表锁. Oracle 在Oracle的每行数据上,都有一个标志位来表示该行数据是否被锁定.这样就大大减小了行级锁的维

record is locked by another user

在更新数据的时候报这个错: 在操作表时没有commit,导致表被锁,只要执行下面两行语句,就可以了将行锁解锁了. 查看被锁表的sid 和 serial Select t2.username,t2.sid,t2.serial#,t2.logon_time from v$locked_object t1,v$session t2 where t1.session_id=t2.sid; kill 相应的session alter system kill session 'sid, serial#';

Oracle:record is locked by another user

折腾好久不行,问题关键是找不到到底是哪个进程造成了锁死,v$locked_object这个视图又没有权限. 最终解决方法如下: PL/SQL Developer 中 Tools->Sessions打开session窗口,在窗口的下半部分有一个locks的tab页,切换到该页,挨个点击上面session的列表,如果点了某个session后,locks里面出现了记录,那么这条就是导致锁死的session. 使用命令 alter system kill session 'sid,serial#' ;

oracle遇到的锁异常,oralce record is locked by another user

由于我在前不久的一次项目调试的时候,将一条数据的ID与另一条数据的ID相同了,但不知为什么没有报错,当在页面发现问题时,删除这条数据时就报错了,oralce record is locked by another user 将锁图标打开也不行,于是找了网上很多解决方式,但说得都不尽详细,最后自己根据其他人的写法,最终将错误数据成功删除 select session_id from v$locked_object; SELECT sid, serial#, username, osuser FRO

oracle record is locked by another user

先说说问题的由来:下午修改数据库中的表,修改完成后保存但是没有提交,这时突然要去别的地方调试,拔掉网线,然后在插上网线,就出现了这个record is locked by another user错误.网上找了一下原因,出现这个错误就是保存且未提交,而又关闭连接引起的. 现在说一下解决的方案: 1.以管理员的身份登陆PL/SQL Developer (记住一定要以管理员的身份登陆) 2.在菜单栏中找到tools->sessions,点击打开 3.在上边那一栏中找到Machine名字为你的电脑名的

Oraclet提交提示Record is locked by another user错误

http://blog.csdn.net/alifel/article/details/4324338下午修改oracle datebase中的字段时,提示"Record is locked by another user",错误可想而知. 下面解除锁 1.查看锁 select t2.username,t2.sid,t2.serial#,t2.logon_time from v$locked_object t1,v$session t2 where t1.session_id=t2.s

oracle行转列

针对oracle数据查询的数据,行转列 1.wm_concat函数: 例一: select c1,c2,wm_concat(c3) from T where.... group by c1,c2 查询结果自动用","分割 例二: select c1,c2,wm_concat(c3)over(partition by ..order by..) from T where.... 其中,partition用来分组, order用来排序 2.sys_connect_by_path函数: 这个

oracle 行转列 分析函数

oracle 行转列 首先看一下源数据: 方法一:WM_CONCAT group by 这个方法没有问题. SELECT CODE_TS, WMSYS.WM_CONCAT(S_NUM + 1 || ':' || ELEMENT) ELEMENT FROM T_MERCH_ELEMENT where code_ts='020745' group by CODE_TS; 得到的结果: 上面大家可能会发现序号没有按顺序排列下来.如果没有要求,就这样就可以了.如果要排序看方法二. 方法二:WM_CONC

Oracle insert hang引发的行锁等待

问题描述: 客户方前台应用某个操作hang住,无报错也未有操作正常结束提示. 查看锁信息如下: SQL> with lk as (select blocking_instance||'.'||blocking_session blocker, inst_id||'.'||sid waiter 2              from gv$session 3              where blocking_instance is not null 4                and