In mijn vorige bericht heb ik een voorbeeld gegeven om een ZIP-bestand te zippen met PL/SQL in Oracle, en in dit bericht leg ik uit hoe je een ZIP-bestand uitpakt, of een bestand uitpakt in PL/SQL met dezelfde Alexandria PL /SQL-hulpprogrammapakket.
Volg deze stappen om een ZIP-bestand uit te pakken (uitpakken) met PL/SQL in Oracle
- Klik op Download het Alexandria PL/SQL-hulpprogrammapakket om het pakket eerst te downloaden.
- Pak vervolgens het ZIP-bestand uit en zoek de onderstaande vier bestanden op in de directory alexandria-plsql-utils-master\ora\:
- zip_util_pkg.pks
- zip_util_pkg.pkb
- file_util_pkg.pks
- file_util_pkg.pkb
- Installeer deze scripts in uw Oracle Database Schema en als er tijdens de installatie een fout optreedt vanwege een ontbrekend object, zoek dan in de directory alexandria-plsql-utils-master\extras en installeer het.
- Maak nu een directory-object in Oracle voor de locatie van uw ZIP-bestanden, zoals in onderstaand voorbeeld.
Create OR Replace Directory UNZIP_FILES as 'c:\my_zip_files';
U kunt nu een ZIP-bestand uitpakken met PL/SQL, zoals in onderstaand voorbeeld.
Een bestand uitpakken in PL/SQL-voorbeeld
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; /
Controleer de maplocatie voor het UNZIP_FILES-mapobject en u zult de uitgepakte bestanden vinden.
Zie ook:
- Gegevens exporteren naar Excel-bestand in Oracle
- PDF-rapport maken met PL/SQL