目前情况这样
有一台服务器,上面的数据库我没有权限直接的访问,只能通过一个页面来操控,具体报错信息完全看不到。我执行 “select * from user_objects where status<>'VALID'”
结果提示 有一个包出错。(包头和包体的名称都相同)我将包里的存储过程都查询了一遍,都存在,参数数量、位置也正确,但这个包依旧报错。还有什么办法或语句能找出错误的原因?

解决方案 »

  1.   

    实在找不到哪里出了问题
    package body etl_package_name as  
    procedure etl_package_name(starttime date, endtime date) is  
    v_sqlerr varchar2(2000);  
    v_number int := 0;  
    v_job_name varchar2(100) := 'etl_package_name';  
    v_etl_number int := 0;  
     
    begin  
     
    ETL_MD_ETL_LOG(v_job_name, v_number, starttime, endtime,v_etl_number,null);  
     
    etl_name1(starttime,endtime ,v_etl_number);  
    etl_name12(starttime,endtime,v_etl_number);  
    etl_name13(starttime,endtime,v_etl_number);  
    etl_name14(starttime,endtime,v_etl_number);  
    etl_name15(v_etl_number);  
    etl_name16(starttime,endtime,v_etl_number);  
     
    v_number := 1;  
    ETL_MD_ETL_LOG(v_job_name, v_number, starttime, endtime,v_etl_number,null);  
     
     
    exception  
    when others then  
    v_sqlerr := Sqlerrm;  
     
    etl_md_etl_log(v_job_name, 1,starttime,endtime,v_etl_number,v_sqlerr);  
     
    end;  
    end; 
      

  2.   


    select * from user_objects 
    --这个报错吗?