Poniżej podano przykład eksportu danych do Excela z tabeli Oracle za pomocą PL SQL. Możesz wykonać to zadanie za pomocą pakietu xlsx_builder_pkg , który możesz pobrać z GITHUB za pomocą następującego linku Kliknij tutaj. Po pobraniu pakietu rozpakuj plik zip i zlokalizuj pakiet w tej ścieżce \alexandria-plsql-utils-master\ora\. Znajdziesz dwa pliki xlsx_builder_pkg.pks i xlsx_builder_pkg.pkb .
W pobranym pliku zip znajduje się również wiele innych skryptów narzędziowych, których możesz użyć podczas programowania. Więcej przykładów tych skryptów podam w innych moich postach.
Zainstaluj te dwa skrypty w schemacie bazy danych i utwórz obiekt katalogu dla plików Excel xlsx (jeśli jeszcze ich nie masz), jak pokazano w poniższym przykładzie:
Utwórz obiekt Oracle Directory
Create OR Replace Directory excel_files as 'c:\excel_files';
Twój katalog bazy danych został utworzony i możesz teraz utworzyć plik Excel z tabeli Oracle za pomocą PL SQL. Poniżej znajduje się przykład:
Eksportuj dane do Excela z tabeli Oracle za pomocą 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;
Powyższy przykład wyeksportuje wszystkie dane z tabeli emp do pliku Excel z jednym arkuszem o nazwie emp. Uwaga, procedura query2sheet ma dwa parametry, jeden p_sql dla instrukcji select, a drugi p_sheet to numer arkusza. Tak jak w przykładzie, tworzymy tylko jeden arkusz o nazwie emp, więc przekażemy 1 dla parametru p_sheet. Możesz utworzyć wiele arkuszy z danymi. Zobacz poniższy przykład:
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;
Spowoduje to wyeksportowanie danych z emp table do arkusza emp iz tabeli dept do arkusza dept w jednym pliku Excel o nazwie emp.xlsx. Możesz więcej studiować ten pakiet i wykonywać więcej zadań. Podam też więcej przykładów z tego.