可以做成批量处理的
sql>spool d:\a.sql;
sql>select 'alter procedure '||procedure_name||' compile;' from user_procedures ;
sql>spool off;
sql>@d:\a.sql

解决方案 »

  1.   

    spool pro
    select 'alter procedure '||name ||' compile;' from user_source where type='procedure';
    spool off
    @ pro
      

  2.   

    sorry
    !
    spool pro
    select 'alter procedure '||name ||' compile;' from user_source where type='PROCEDURE';
    spool off
    @ pro
      

  3.   

    那可不可以从根本上解决问题呢?如果在IMP或者EXP上做些选项设置可以一步到位多好。
      

  4.   

    老大,你不会用工具啊,PL/SQL Developer,TOAD都可以全选,然后右键点击编译或点击工具栏上的编译,一切搞定。还有专门编译无效函数和存储过程的按钮。在这些工具里无效存储过程能够一眼就看清除了。
    你导入后无法工作可能是因为存储过程/函数之间有关联。
      

  5.   

    import的时候让oracle不要重新编译过程和包等。
    imp compile=n(缺省为y)