ORACLE11GORA-600[kkdcacrptn_kxcp]错误解决方法

文章作者 100test 发表时间 2007:10:24 13:15:21
来源 100Test.Com百考试题网


总的来说Oracle11g的测试还是很到位的,用了这么长时间,测试了这么多的新功能,一共只碰到过一个7445错误和一个600错误。对于一个新推出的版本,已经算是很不错了。
这个错误可以重现,当执行下面的SQL,会产生这个错误:
SQL> SELECT B.OWNER, B.TABLE_NAME, OBJECT_NAME, SUBOBJECT_NAME
2 FROM
3 DBA_OBJECTS A,
4 (
5 SELECT B.OWNER, B.TABLE_NAME, DBMS_ROWID.ROWID_OBJECT(B.ROWID) DATA_OBJECT_ID
6 FROM T_PRIMARY A, T_FOREIGN B
7 WHERE A.OWNER = B.OWNER
8 AND A.TABLE_NAME = B.TABLE_NAME
9 AND A.TABLE_NAME IN (’DUAL’, ’T_PRIMARY’, ’T’, ’DR$INDEX’)
10 ) B
11 WHERE A.DATA_OBJECT_ID = B.DATA_OBJECT_ID.
DBA_OBJECTS A,
*第 3 行出现错误:
ORA-00600: 内部错误代码, 参数: [kkdcacr: ptn_kxcp], [], [], [], [], [], [], []
至于T_PRIMARY和T_FOREIGN的创建脚本和含义,可以参考:http://yangtingkun.itpub.net/post/468/404694
通过EXPLAIN PLAN FOR查看执行计划也会报错:
SQL> EXPLAIN PLAN FOR
2 SELECT B.OWNER, B.TABLE_NAME, OBJECT_NAME, SUBOBJECT_NAME
3 FROM
4 DBA_OBJECTS A,
5 (
6 SELECT B.OWNER, B.TABLE_NAME, DBMS_ROWID.ROWID_OBJECT(B.ROWID) DATA_OBJECT_ID
7 FROM T_PRIMARY A, T_FOREIGN B
8 WHERE A.OWNER = B.OWNER
9 AND A.TABLE_NAME = B.TABLE_NAME
10 AND A.TABLE_NAME IN (’DUAL’, ’T_PRIMARY’, ’T’, ’DR$INDEX’)
11 ) B
12 WHERE A.DATA_OBJECT_ID = B.DATA_OBJECT_ID.
DBA_OBJECTS A,
*第 4 行出现错误:
ORA-00600: 内部错误代码, 参数: [kkdcacr: ptn_kxcp], [], [], [], [], [], [], []
去掉内存查询中的连接,只保留T_FOREIGN表,则错误消失。
SQL> SELECT B.OWNER, B.TABLE_NAME, OBJECT_NAME, SUBOBJECT_NAME
2 FROM
3 DBA_OBJECTS A,
4 (
5 SELECT B.OWNER, B.TABLE_NAME, DBMS_ROWID.ROWID_OBJECT(B.ROWID) DATA_OBJECT_ID
6 FROM T_FOREIGN B
7 WHERE TABLE_NAME IN (’DUAL’, ’T_PRIMARY’, ’T’, ’DR$INDEX’)
8 ) B
9 WHERE A.DATA_OBJECT_ID = B.DATA_OBJECT_ID.
OWNER TABLE_NAME OBJECT_NAM SUBOBJECT_NAME
-------- ---------- ---------- ------------------------------
YANGTK T_PRIMARY T_FOREIGN P4 CTXSYS DR$INDEX T_FOREIGN P3

相关文章


oracle删除,修改主健_外键代码
Oracle频繁归档问题解决办法
oracle数据库命令行导入导出方法
Oracle面试试题及答案
ORACLE11GORA-600[kkdcacrptn_kxcp]错误解决方法
Oralce开发技巧总结
10grac重启服务器的方法
在RAC中用NID修改数据库名称
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛