ORA-00600 When running ALTER command?

2019-01-27 03:42发布

问题:

I am running this command on a table :

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

And i keep getting this error:
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

Any thoughts on this?

回答1:

This is a bug, and you need to talk with your dba to make a SR as paxdiablo said.

If you are pressed for time, you can manually do what does

ALTER TABLE testTable ADD column1 NUMBER(1) DEFAULT 0 NOT NULL;
  1. Add the column as null:

    ALTER TABLE testTable ADD column1 NUMBER(1);
    
  2. Update values:

    update testTable set column1 = 0;
    
  3. Alter table not null(between precedent and this, you must be sure that nobody inserts in the table):

    ALTER TABLE testTable MODIFY(column1  NOT NULL)
    


回答2:

Well, despite the fact you stated in your other question that you removed the after clause, it's still there :-)

But that's irrelevant. This is a serious bug with Oracle.

You need to report it to them (raise an SR with your Oracle Support rep), as the error message advises.