Di bawah ini adalah contoh program PL/SQL untuk mengkompilasi semua spesifikasi paket yang tidak valid dan semua badan paket yang tidak valid untuk pengguna saat ini (SCHEMA) di Oracle. Juga, jika ada paket yang tidak valid yang tidak berhasil dikompilasi, maka nama paket akan dicetak untuk pemeriksaan kesalahan manual.
Kompilasi Semua Paket Tidak Valid dalam Contoh Oracle
SET SERVEROUTPUT ON; DECLARE CURSOR c_pkg IS SELECT owner, object_type, object_name FROM dba_objects WHERE status = 'INVALID' AND owner = USER AND object_type LIKE 'PACKAGE%' ORDER BY object_type; BEGIN FOR c IN c_pkg LOOP BEGIN IF c.object_type = 'PACKAGE' THEN EXECUTE IMMEDIATE 'ALTER PACKAGE ' || c.owner || '.' || c.object_name || ' COMPILE'; ELSE EXECUTE IMMEDIATE 'ALTER PACKAGE ' || c.owner || '.' || c.object_name || ' COMPILE BODY'; END IF; EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.put_line(c.object_type || ' ' || c.object_name || ' is still invalid. Check the package manually to resolve.'); END; END LOOP; END; /
Contoh Output (jika ada kesalahan):
PACKAGE EMP_PKG is still invalid. Check the package manually to resolve. PACKAGE BODY EMP_PKG is still invalid. Check the package manually to resolve. PL/SQL procedure successfully completed.
Lihat juga:
- Cara membuat prosedur di dalam paket di Oracle
- Cara memeriksa jumlah objek yang tidak valid di Oracle
- 20 Contoh Pernyataan Sisipan Oracle yang Berguna