По-долу е даден пример за експортиране на данни в Excel от таблицата на Oracle с помощта на PL SQL. Можете да направите тази задача с помощта на пакета xlsx_builder_pkg , който можете да изтеглите от GITHUB, като използвате следната връзка Натисни тук. След като изтеглите пакета, извлечете zip файла и намерете пакета на този път \alexandria-plsql-utils-master\ora\. Ще намерите двата файла xlsx_builder_pkg.pks и xlsx_builder_pkg.pkb .
В изтегления zip файл има и много други полезни скриптове, които можете да използвате за разработката си. Ще дам повече примери за тези скриптове в другите си публикации.
Инсталирайте тези два скрипта в схемата на вашата база данни и създайте обект на директория за Excel xlsx файлове (ако все още нямате), както е показано в примера по-долу:
Създайте обект на директория на Oracle
Create OR Replace Directory excel_files as 'c:\excel_files';
Вашата директория на база данни вече е създадена и сега можете да създадете файл на Excel от таблицата на Oracle, използвайки PL SQL. По-долу е примерът:
Експортирайте данни в Excel от Oracle Table с помощта на PL SQL
BEGIN xlsx_builder_Pkg.clear_workbook; xlsx_builder_pkg.new_sheet ('emp'); xlsx_builder_pkg.query2sheet (p_sql => 'select * from emp', p_sheet => 1); xlsx_builder_pkg.save ('EXCEL_FILES', 'emp.xlsx'); END;
Горният пример ще експортира всички данни от таблицата emp във файл на Excel с един лист с име emp. Забележете, процедурата query2sheet има два параметъра, единият p_sql за оператор select, а вторият p_sheet е номерът на листа. Както в примера, създаваме само един лист с име emp, така че ще предадем 1 за параметъра p_sheet. Можете да създадете няколко листа с данни. Вижте примера по-долу:
BEGIN xlsx_builder_Pkg.clear_workbook; xlsx_builder_pkg.new_sheet ('emp'); xlsx_builder_pkg.query2sheet (p_sql => 'select * from emp', p_sheet => 1); xlsx_builder_pkg.new_sheet ('dept'); xlsx_builder_pkg.query2sheet (p_sql => 'select deptno, dname from dept where deptno = 20', p_sheet => 2); xlsx_builder_pkg.save ('EXCEL_FILES', 'emp.xlsx'); END;
Това ще експортира данните от таблицата emp в emp sheet и от dept таблицата в dept sheet в един файл на Excel с име emp.xlsx. Можете да изучавате този пакет повече и да изпълнявате повече задачи. Ще дам и още примери от него.