I mit tidligere indlæg har jeg givet et eksempel på at ZIP en fil ved hjælp af PL/SQL i Oracle, og i dette indlæg forklarer jeg, hvordan man udpakker en ZIP-fil eller udpakker en fil i PL/SQL ved hjælp af den samme Alexandria PL /SQL hjælpepakke.
Følg disse trin for at udpakke (udpakke) en ZIP-fil ved hjælp af PL/SQL i Oracle
- Klik på Download the Alexandria PL/SQL Utility Package for at downloade pakken først.
- Udtræk derefter ZIP-filen, og find nedenstående fire filer i mappen alexandria-plsql-utils-master\ora\:
- zip_util_pkg.pks
- zip_util_pkg.pkb
- file_util_pkg.pks
- file_util_pkg.pkb
- Installer disse scripts i dit Oracle-databaseskema, og under installationen, hvis der er en fejl på grund af manglende objekt, skal du finde i alexandria-plsql-utils-master\extras-biblioteket og installere det.
- Opret nu et biblioteksobjekt i Oracle til din ZIP-filplacering, som vist i nedenstående eksempel.
Create OR Replace Directory UNZIP_FILES as 'c:\my_zip_files';
Du kan nu udpakke en ZIP-fil ved hjælp af PL/SQL, som vist i nedenstående eksempel.
Udpak en fil i PL/SQL-eksempel
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; /
Tjek mappeplaceringen for UNZIP_FILES biblioteksobjekt, og du vil finde de udpakkede filer.
Se også:
- Eksporter data til Excel-fil i Oracle
- Opret PDF-rapport ved hjælp af PL/SQL