Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Eksportuj dane do Excela z tabeli Oracle za pomocą PL SQL

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.pksxlsx_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.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle:zapytanie SQL, aby znaleźć wszystkie wyzwalacze należące do tabel?

  2. Baza danych menedżera pakietów RPM GI 19c

  3. Funkcja NUMTOYMINTERVAL() w Oracle

  4. Konfiguracja źródła danych Oracle dla Spring

  5. Jak przetestować procedurę składowaną Oracle z typem zwrotu RefCursor?