错误提示:异常信息: ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源

oraclestudy999 2009-04-13 10:08:56
我的存储过程中有以下一段:

strsql:='truncate table table1';
execute immediate strsql;
commit;

update table1...

...

这个存储过程在asp.net中被调用。在别人点执行时,我又点了执行,系统马上报错
异常信息: ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源
如何让系统不报错,等别人执行完后,我的点击可以执行。谢谢
...全文
4361 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
liangxie 2009-04-15
  • 打赏
  • 举报
回复
lz 可以多研究下 oracle 的事务
liangxie 2009-04-15
  • 打赏
  • 举报
回复


同时对一个表操作,update,truncate 等操作 可以让多个人同时调用truncate 一个表?

同时asp里写的调用过程的方法时候够健壮等等 ORA-00054的异常是否捕获.

ORA-00054 正常情况下如果资源锁定,根据ora默认的设置 想修改被锁定的资源需要一段时间才会抱错

+ no wait 则会不等待立即申请资源,如果资源这个时候被锁定,则立即抱错.
hjianke 2009-04-14
  • 打赏
  • 举报
回复
delete不会释放表占用的空间
truncate要释放
oraclestudy999 2009-04-13
  • 打赏
  • 举报
回复
我把存储过程改了,改成 delete from table1; commit;
这样好象不报错了,谁知道为什么?谢谢
cosio 2009-04-13
  • 打赏
  • 举报
回复
ORA-00054 resource busy and acquire with NOWAIT specified

Cause: The NOWAIT keyword forced a return to the command prompt because a resource was unavailable for a LOCK TABLE or SELECT FOR UPDATE command.

Action: Try the command after a few minutes or enter the command without the NOWAIT keyword.


在SQL中增加NO WAIT!

17,140

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧