Oracle
 sql >> база данни >  >> RDS >> Oracle

Създайте електронна таблица на Excel от база данни на Oracle

Предполагам, че проблемът е колко сложна е вашата "сложна структура"?

IDE за програмиране като Oracle SQL Developer или Quest TOAD имат съветници за експортиране на таблица с данни в CSV файлове.

Ако искате да обедините данни от множество таблици, можете да използвате изглед или дори да напишете SQL израз

select e.ename||','||d.dname
from   emp e
       join dept d on ( e.deptno = d.deptno )
/

(да не забравяме, че колоните често могат да съдържат данни, които включват запетаи, така че може да искате да използвате по-необичаен знак - или набор от знаци - като разделител.)

Друг бърз начин да направите нещо е да използвате HTML функцията за отчитане на SQL*Plus. Много инструменти за електронни таблици могат да импортират добре структуриран HTML и XML без изтръгване. Научете повече.

Ако искате да изгладите йерархична структура или нещо още по-заплетено, вероятно ще трябва да преминете към PL/SQL. Един ръчен подход би използвал вариант на горното изявление, приспособено да използва UTL_FILE:

declare
    csv_fh  utl_file.filetype;
begin
    csv_fh := utl_file.fopen('C:\temp', 'data_export.csv', 'W');
    for r in   (  select e.ename, d.dname
                  from   emp e
                  join dept d on ( e.deptno = d.deptno )
                ) loop
        utl_file.put_line(csv_fh, r.ename||'|'||r.dname;
    end loop;
    utl_file.fclose(csv_fh);
end;

Ако искате да експортирате специално в Excel (т.е. .XLS файл), тогава ще трябва да надхвърлите вградените модули на Oracle. Обичайното решение за експортиране направо от PL/SQL в Excel е OWA_SYLK обвивката на Tom Kyte за SYLK api. Научете повече.

Това работи с единични работни листове. Ако искате да експортирате в няколко работни листа, има няколко алтернативни решения.

Sanjeev Sapre има своя пакет get_xl_xml. Както подсказва името, той използва XML за извършване на трансформацията. Открийте повече.

Джейсън Бенет е написал PL/SQL обект, който генерира XML документ на Excel. Научете повече.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да използвате ora_hash в колона с тип данни xmltype

  2. Функция REPLACE() в Oracle

  3. Обръщане на низ Word по Word с помощта на SQL

  4. Как да изброите всички съхранени процедури в базата данни на Oracle

  5. Как мога да комбинирам няколко реда в списък, разделен със запетая в Oracle?