I mitt tidigare inlägg har jag gett ett exempel på att zippa en fil med PL/SQL i Oracle, och i det här inlägget förklarar jag hur man extraherar en ZIP-fil eller packar upp en fil i PL/SQL med samma Alexandria PL /SQL-verktygspaket.
Följ dessa steg för att packa upp (extrahera) en ZIP-fil med PL/SQL i Oracle
- Klicka på Ladda ner Alexandria PL/SQL Utility Package för att ladda ner paketet först.
- Extrahera sedan ZIP-filen och leta upp nedanstående fyra filer i alexandria-plsql-utils-master\ora\-katalogen:
- zip_util_pkg.pks
- zip_util_pkg.pkb
- file_util_pkg.pks
- file_util_pkg.pkb
- Installera dessa skript i ditt Oracle Database Schema och under installationen om det finns ett fel på grund av att objekt saknas, leta sedan upp i alexandria-plsql-utils-master\extras-katalogen och installera den.
- Skapa nu ett katalogobjekt i Oracle för din ZIP-filplats, som visas i exemplet nedan.
Create OR Replace Directory UNZIP_FILES as 'c:\my_zip_files';
Du kan nu extrahera en ZIP-fil med PL/SQL, som visas i exemplet nedan.
Uppacka en fil i PL/SQL-exempel
DECLARE fl zip_util_pkg.t_file_list; l_file BLOB; BEGIN /* specify the directory object and your ZIP file to get_file_list function */ fl := zip_util_pkg.get_file_list ('UNZIP_FILES', 'plsql_3.zip'); IF fl.COUNT () > 0 THEN FOR i IN fl.FIRST .. fl.LAST LOOP l_file := zip_util_pkg.GET_FILE ('UNZIP_FILES', 'plsql_3.zip', fl (i)); file_util_pkg.save_blob_to_file ('UNZIP_FILES', fl (i), l_file); END LOOP; END IF; END; /
Kontrollera mappplatsen för UNZIP_FILES katalogobjekt, så hittar du de extraherade filerna.
Se även:
- Exportera data till Excel-fil i Oracle
- Skapa PDF-rapport med PL/SQL