ORACLE服务器会话因致命错误而终止

时间:2013-02-28 10:12:02

标签: oracle triggers oracle11g ora-00600

我已编辑Trigger并尝试保存。然后我得到了以下错误。

Error: ORA-00603: ORACLE server session terminated by fatal error
ORA-00600: internal error code, arguments: [kqlidchg1], [], [], [], [], [], [], [], [], [], [], []
ORA-00604: error occurred at recursive SQL level 1
ORA-00001: unique constraint (SYS.I_PLSCOPE_SIG_IDENTIFIER$) violated

我无法通过修改保存trigger。我怎么能解决这个问题?

2 个答案:

答案 0 :(得分:6)

ORA-00600是一个通用的Oracle消息,表示您的操作的未处理副作用,即Oracle错误。错误的确切原因可能取决于数据库版本,补丁级别和平台(操作系统风格和版本)。

处理这些事情的正确方法是联系Oracle支持。如果你没有支持合同,那你可能运气不好。 ORA-00600的性质意味着它们中的一些可以访问非常具体的站点,所以也许其他人之前没有这样做过。但试试谷歌,你永远不会知道...


而且! Google提供this gem by Marc Tempel。也许它会对你有所帮助。

答案 1 :(得分:6)

我反复获取此错误列表,创建一个触发器:

ORA-00603: ORACLE server session terminated by fatal error
ORA-00600: internal error code, arguments: [kqlidchg1], [], [], [], [], [], [], [], 
ORA-00604: error occurred at recursive SQL level 1
ORA-00001: unique constraint (SYS.I_PLSCOPE_SIG_IDENTIFIER$) violated
00603. 00000 -  "ORACLE server session terminated by fatal error"

在SQLDeveloper中,编辑PLSCOPE_SETTINGS:

Tools->Preferences ->Database->PL/SQL Compiler

将“PLScope标识符:”设置为“无” 这解决了这个问题,之后我没有遇到任何问题。