我在数据库中执行下述语句:
CREATE TABLE a (NAME VARCHAR2(100));
创建表成功!INSERT INTO a (NAME) VALUES ('abc');
往该表中插入数据就会报下面的错误ORA-00604: 递归 SQL 级别 1 出现错误
ORA-01741: 非法的零长度标识符求各位大大指教啊!急!

解决方案 »

  1.   

    这个我执行了下没有问题的,你可以trace一下
      

  2.   


    怎样trace呢 我是新手~
      

  3.   

    怎样trace呢 我是新手。。
      

  4.   

    sqlplus "/as sysdba"
    SQL>alter session set sql_trace=true;
    SQL>INSERT INTO a (NAME) VALUES ('abc');
    SQL>exit然后在udump目录下找到刚生成的文件,如下命令可看到是哪个目录
    SQL> SHOW PARAMETER USER_DUMP
      

  5.   

    这样的错误在日志里应该有,也同时生成了trace。
    到admin/bdump下找 *_alert.log,看看里面,然后根据记录的信息找trace
      

  6.   

    =====================
    PARSE ERROR #4:len=52 dep=1 uid=0 oct=12 lid=0 tim=1329959118621649 err=1741
    drop table ""."BIN$o63sSb5f61DgQAB/AQB98w==$0" purge
    kdpurtab: err=604 goc1=604 goc2=1741 goc3=0
    CLOSE #4:c=0,e=5,dep=1,type=0,tim=1329959118621837
    XCTEND rlbk=1, rd_only=1, tim=1329959118621881
    STAT #3 id=1 cnt=1 pid=0 pos=1 obj=0 op='SORT ORDER BY (cr=205 pr=205 pw=0 time=0 us cost=11 size=205 card=5)'
    STAT #3 id=2 cnt=5028 pid=1 pos=1 obj=141 op='TABLE ACCESS BY INDEX ROWID RECYCLEBIN$ (cr=205 pr=205 pw=0 time=38456 us cost=10 size=205 card=5)'
    STAT #3 id=3 cnt=12814 pid=2 pos=1 obj=143 op='INDEX RANGE SCAN RECYCLEBIN$_TS (cr=44 pr=44 pw=0 time=15603 us cost=2 size=0 card=539)'
    CLOSE #3:c=0,e=216,dep=1,type=0,tim=1329959118622160
    EXEC #7:c=200969,e=437328,p=624,cr=8420,cu=21,mis=0,r=0,dep=0,og=1,plh=0,tim=1329959118629407
    ERROR #7:err=604 tim=1329959118629469
    STAT #7 id=1 cnt=0 pid=0 pos=1 obj=0 op='LOAD TABLE CONVENTIONAL  (cr=0 pr=0 pw=0 time=0 us)'
    =====================
    TRACE里面有关604和1741的错误就这一段 完全看不懂。
      

  7.   

    哪位大虾指教下啊,TRACE里面的错误信息~
      

  8.   

    drop table ""."BIN$o63sSb5f61DgQAB/AQB98w==$0" purge
    这一段说明系统在清理回收站,但这个语句中,用户名为空,因而出错。
    检查回收站对象:
    select * from dba_recyclebin WHERE OBJECT_NAME='BIN$o63sSb5f61DgQAB/AQB98w==$0';
    检查表空间的剩余空间
    麻烦把完整的trace文件上传