В предишната си публикация дадох пример за ZIP файл с помощта на PL/SQL в Oracle, а в тази публикация обяснявам как да извлечете ZIP файл или да разархивирате файл в PL/SQL с помощта на същия Alexandria PL /SQL помощен пакет.
Следвайте тези стъпки, за да разархивирате (извлечете) ZIP файл с помощта на PL/SQL в Oracle
- Щракнете върху Изтегляне на пакета с помощни програми на Alexandria PL/SQL, за да изтеглите първо пакета.
- След това извлечете ZIP файла и намерете посочените по-долу четири файла в директорията alexandria-plsql-utils-master\ora\:
- zip_util_pkg.pks
- zip_util_pkg.pkb
- file_util_pkg.pks
- file_util_pkg.pkb
- Инсталирайте тези скриптове във вашата Oracle Database Schema и докато инсталирате, ако има грешка поради липсващ обект, след това намерете в директорията alexandria-plsql-utils-master\extras и я инсталирайте.
- Сега създайте обект на директория в Oracle за местоположението на вашите ZIP файлове, както е показано в примера по-долу.
Create OR Replace Directory UNZIP_FILES as 'c:\my_zip_files';
Вече можете да извлечете ZIP файл с помощта на PL/SQL, както е показано в примера по-долу.
Разархивирайте файл в пример за PL/SQL
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; /
Проверете местоположението на папката за обект UNZIP_FILES директория и ще намерите извлечените файлове.
Вижте също:
- Експортиране на данни във файл на Excel в Oracle
- Създайте PDF отчет с помощта на PL/SQL