• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

ORA-14452错误解决方法

mysql 搞代码 4年前 (2022-01-09) 30次浏览 已收录 0个评论

最近工作中创建了一张session级的临时表,删除的时候报下面错误:ORA-14452:试图创建,更改或删除正在使用的临时表中的索引,先从

最近工作中创建了一张session级的临时表,删除的时候报下面错误:ORA-14452:试图创建,更改或删除正在使用的临时表中的索引

网上查阅资料解决方法如下:

1、先从user_objects或dba_objects中查询到该表的object_id:

此处以sysdba登录:
C:\Documents and Settings\Administrator>sqlplus sys/Oracle@orcl as sysdba

SQL> select object_id from dba_objects where object_name=UPPER(‘RP_RETAIL001’);

OBJECT_ID
———-
74317

2、根据查到的object_id知道使用该表的session:

SQL> set linesize 1000
SQL> select * from v$lock where id1=74317;

ADDR KADDR SID TY ID1 ID2 LMODE REQUEST CTIME BLOCK
—————- —————- ———- — ———- ———- ———- ———- ———- —来2源gaodaima#com搞(代@码&网——-
000007FFC70967C0 000007FFC70967E0 166 TO 74317 1 3 0 424 0

3、在从v$session视图中查到该session的SID和SERIAL#:

SQL> select serial# from v$session where sid=166;

SERIAL#
———-
51595

4、杀掉这些进程:

SQL> alter system kill session ‘166,51595’;

系统已更改。

5 最后以普通用户登录,删除临时表:

SQL> conn dylan/abc123@orcl
已连接。
SQL> drop table rp_retail001;

表已删除。

——————————————-
made by dylan.


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:ORA-14452错误解决方法
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址