【问题标题】:ORA-00600 When running ALTER command?ORA-00600 运行 ALTER 命令时?
【发布时间】:2012-01-19 08:34:45
【问题描述】:

我在一张桌子上运行这个命令:

ALTER TABLE testTable ADD column1 NUMBER(1) DEFAULT 0 NOT NULL;

我不断收到此错误:
Error report:
SQL Error: ORA-00600: internal error code, arguments: [kkpoffoc], [], [], [], [], [], [], [], [], [], [], []
00600. 00000 - "internal error code, arguments: [%s], [%s], [%s], [%s], [%s], [%s], [%s], [%s]"
*Cause: This is the generic internal error number for Oracle program
exceptions. This indicates that a process has encountered an exceptional condition.
*Action: Report as a bug - the first argument is the internal error number

对此有什么想法吗?

【问题讨论】:

    标签: sql oracle11g ddl


    【解决方案1】:

    这是一个错误,您需要与您的 dba 交谈以按照 paxdiablo 的说法制作 SR。

    如果时间紧迫,可以手动执行该操作

    ALTER TABLE testTable ADD column1 NUMBER(1) DEFAULT 0 NOT NULL;
    
    1. 将该列添加为空:

      ALTER TABLE testTable ADD column1 NUMBER(1);
      
    2. 更新值:

      update testTable set column1 = 0;
      
    3. Alter table not null(在precedent和this之间,你必须确保table中没有人插入):

      ALTER TABLE testTable MODIFY(column1  NOT NULL)
      

    【讨论】:

    • 我只是想把这个贴下来。这是我几秒钟前想出的答案。
    【解决方案2】:

    好吧,尽管您在另一个问题中说您删除了 after 子句,但它仍然存在 :-)

    但这无关紧要。这是 Oracle 的一个严重错误。

    您需要按照错误消息的建议向他们报告(向您的 Oracle 支持代表提出 SR)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-27
      • 2010-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多