ORA-00604: error occurred at recursive SQL level 1 ORA-02264: name already used by an existing constraint

  • From: "Octavian Rasnita" <orasnita@xxxxxxxxx>
  • To: "Oracle-L Group" <oracle-l@xxxxxxxxxxxxx>
  • Date: Thu, 23 Sep 2010 12:25:30 +0300

Hi,

I found a strange problem in a database under Oracle Database 11g Release 
11.2.0.1.0 - 64bit Production.
I searched a lot on the net but I couldn't find a solution for it.

After I create a table and I try to drop it, I receive the following error 
message:

ORA-00604: error occurred at recursive SQL level 1
ORA-02264: name already used by an existing constraint 

The table has the structure as below. It also contains more other columns but 
they don't have any constraint defined and I don't know why such an error 
appears after drop table.

I found some messages on the net telling that this issue appears because of 
recyclebin (because the constraints get dupplicated in recyclebin) and the 
suggestion to use `purge recyclebin` but when I give this command it gives the 
following error which is even more strange:

ORA-00600: internal error code, arguments: [16500], [kqdcru], [D], [2], [91],
[BIN$jMPhYuTGVJvgQDIKGRwO+w==$0], [], [], [], [], [], [] 

I have also tried to do `delete from recyclebin` but it gives the error
"ORA-01031: insufficient privileges"

I was able to delete those tables by loging with the sys account as sysdba, but 
I don't know why I can't drop a table after I created it using my username.

Here is the table structure. I verified and the constraints used in this table 
are not used somewhere else.
The strange thing is that I succeeded to drop the table first time using my 
username, but after re-creating it, I wasn't able to drop it anymore, because 
it gave that error.

Please help!

create table bilant_fonduri(
id integer constraint bilant_fonduri_pk primary key,
symbol varchar2(20) constraint bilant_fonduri_symbol_nn not null,
last_update date default sysdate,
year integer constraint bilant_fonduri_year_nn not null,
trim integer constraint bilant_fonduri_trim_nn not null constraint 
bilant_fonduri_trim_c check(trim in('1','2','3','4')),
data_publicare date,
valoare_nominala_emitere number(12,4),
valoare_nominala_publicare number(12,4),
nr_actiuni_emitere integer,
nr_actiuni_publicare integer,
pret_emitere number(12,4),
pret_publicare number(12,4),
active number(1) default 0,
constraint bilant_fonduri_sym_y_t_u unique(symbol, year, trim),
...
);


Thank you.

--Octavian

Other related posts: