oracle Plsql 执行update或者delete时卡死问题解决办法

oracle Plsql 执行update或者delete时 遇到过Plsql卡死问题或者导致代码执行sql的时候就卡死。

在开发中遇到此问题的时候,本来把sql复制出来,在plsql中执行,Sql本身拼写无误,但是出现plsql卡死的情况,

在代码中,执行sql的地方打断点debug,发现执行sql,仍然没有响应。经过网上查资料,猜测导致这种情况的原因是

可能在PLSQL Developer执行update时没有commit,oracle将该条记录锁住了。

可以通过以下办法解决:

先查询锁定记录

Sql代码

SELECT s.sid, s.serial# FROM v$locked_object lo, dba_objects ao, v$session s WHERE ao.object_id = lo.object_id AND lo.session_id = s.sid;

然后删除锁定记录

Sql代码

ALTER system KILL session ‘SID,serial#‘;

通过上述sql,问题终于解决了!

总结下来希望对大家开发有帮助!

oracle Plsql 执行update或者delete时卡死问题解决办法

时间: 2024-10-28 23:41:11

oracle Plsql 执行update或者delete时卡死问题解决办法的相关文章

oracle Plsql 运行update或者delete时卡死问题解决的方法

oracle Plsql 运行update或者delete时 遇到过Plsql卡死问题或者导致代码运行sql的时候就卡死. 在开发中遇到此问题的时候,本来把sql复制出来,在plsql中运行,Sql本身拼写无误,可是出现plsql卡死的情况, 在代码中,运行sql的地方打断点debug,发现运行sql,仍然没有响应.经过网上查资料,推測导致这样的情况的原因是 可能在PLSQL Developer运行update时没有commit,oracle将该条记录锁住了. 能够通过下面办法解决: 先查询锁定

Hive支持行级update、delete时遇到的问题

Hive从0.14版本开始支持事务和行级更新,但缺省是不支持的,需要一些附加的配置.要想支持行级insert.update.delete,需要配置Hive支持事务.(行级的insert好像不配置也能运行) 1.修改hive-site.xml,添加如下语句: <property> <name>hive.support.concurrency</name> <value>true</value> </property> <prope

Oracle登录时卡死解决办法

问题: PLSQL登录Oracle数据库的时候一直提示正在登录,程序没有任何反应卡死,或者Navicat Premium 一直无法连接上,但不提示任何错误(个人是运行虚拟机后就无法正常使用,估计是监听程序设置是主机名,如果主机是双网卡或有虚拟网卡运行在服务器重启时容易导致监听出错). 解决方法: 开始运行: services.msc, 找到OracleOraDb11g_home1TNSListener 重新启动一次,若不行,请先停止, 再启动一次(本人测试时需要两次重启,原因不明),完成后Ora

spring data jpa执行update和delete语句时报错处理

之前项目中使用spring data jpa时,遇到删除记录的需求时,主要利用spring data中自带的delete()方法处理,最近在dao层使用delete sql语句时报错,代码如下: [java] view plain copy @Query(value = "delete parcel,parcel_file,ms_files,t_order,route " + "from parcel left join route on parcel.route_id = 

安装好ubuntu双系统启动时卡死解决办法

问题描述:在安装完ubuntu双系统后,第一次启动ubuntu系统时,卡死在启动界面(或者黑屏),这大概都是由于显卡驱动的原因,具体不在这里阐述,通过以下方法能成功解决,据我个人经验,这可能是诸多方法中最简单最容易理解的方法. 解决办法: 1.(如果已经卡死了,则强制关机)开机: 2.(在选择系统的界面)选择ubuntu高级选项,回车: 3.(在出现的两个模式中)选择恢复(recovery)模式,回车: 4.(在出现的众多选项中)选择grub,回车(你能看到貌似很牛逼的一行行代码跑过): 5.(

mysql受限定的update或delete

在mysql命令加上选项-U后,当发出没有WHERE或LIMIT关键字的UPDATE或DELETE时,mysql程序拒绝执行 --1.mysql帮助说明 [user]# mysql --help --2.指定-U登录测试 [oldboy_c64 ~]# mysql -uroot -plu -S /data/3306/mysql.sock -U Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connectio

oracle执行update时卡死问题的解决办法

今天进行项目开发时,为了测试项目中SQL执行效果,就用PLSQL Developer执行了一下,没有commit就继续敲代码了,之后重新使用PLSQL Developer时,可能是网络原因,PLSQL Developer断开了与数据库连接并且卡死,便强制结束了.代码敲完后进行测试,项目执行后没效果,并且无响应,debug后发现jdbc执行SQL时没反应了,问了一下谷老师才找到原因. 由于在PLSQL Developer执行update时没有commit,oracle将该条记录锁住了. 可以通过以

Oracle 增删改(INSERT、DELETE、UPDATE)语句

?  简介 本文介绍 Oracle 中的增删改语句,即 INSERT.DELETE.UPDATE 语句的使用.是时候展现真正的技术了,快上车: 1.   插入数据(INSERT) 2.   修改数据(UPDATE) 3.   删除数据(DELETE) 4.   注意事项 1.   插入数据(INSERT) u  语法: INSERT INTO TABLE_NAME [(column1[, column2-]] VALUES(value1[, value2-]); 说明: 1)   INSERT

恢复oracle中update或delete的数据

问题描述 比如在开发人员对employee表进行一个update语句,但更新完之后,才发现更新的语句有误,需要撤销刚才的update操作.如(update employee e set e.block='0300100011000000248' wheree.block='0300100011000000240'; 更新了10条数据) 1.如果在很短的时间内,可以查询数据库中的versions,记录短时间内的employee表中的update.delete.insert的操作.(时间多长取决于数