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.