sql >> Databasteknik >  >> RDS >> Oracle

Exportera data till Excel från Oracle Table med PL SQL

Ett exempel ges nedan för att exportera data till Excel från Oracle-tabellen med PL SQL. Du kan göra den här uppgiften med hjälp av xlsx_builder_pkg-paketet , som du kan ladda ner från GITHUB med hjälp av följande länk Klicka här. Efter att ha laddat ner paketet extrahera zip-filen och leta upp paketet på den här sökvägen \alexandria-plsql-utils-master\ora\. Du hittar de två filerna xlsx_builder_pkg.pks och xlsx_builder_pkg.pkb .

Det finns även många andra verktygsskript i den nedladdade zip-filen som du kan använda för din utveckling. Jag kommer att ge fler exempel på dessa skript i mina andra inlägg.

Installera dessa två skript i ditt databasschema och skapa ett katalogobjekt för Excel xlsx-filer (om du inte redan har gjort det) som visas i exemplet nedan:

Skapa Oracle Directory Object

Create OR Replace Directory excel_files as  'c:\excel_files';

Din databaskatalog är nu skapad och nu kan du skapa Excel-fil från Oracle-tabellen med PL SQL. Nedan är exemplet:

Exportera data till Excel från Oracle Table med 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;

Ovanstående exempel kommer att exportera all data från emp-tabellen till Excel-fil med ett ark som heter emp. Observera att proceduren query2sheet har två parametrar en p_sql för select-satsen och den andra p_sheet är arknumret. Som i exemplet skapar vi bara ett ark med namnet emp, så vi skickar 1 för parametern p_sheet. Du kan skapa flera ark med data. Se exemplet nedan:

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;

Detta kommer att exportera data från emp-tabellen till emp-arket och från dept-tabellen till dept-arket i en Excel-fil som heter emp.xlsx. Du kan studera detta paket mer och kan utföra fler uppgifter. Jag kommer också att ge fler exempel från den.

  1. Maximalt (användbart) antal rader i en Postgresql-tabell

  2. Upprepande rader baserat på kolumnvärde i varje rad

  3. lastInsertId fungerar inte i Postgresql

  4. Det enkla sättet att distribuera ett MySQL Galera Cluster på AWS