Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Buat Spreadsheet Excel dari Database Oracle

Saya kira masalahnya adalah, seberapa kompleks "struktur kompleks" Anda?

IDE pemrograman seperti Oracle SQL Developer atau Quest TOAD memiliki wizard untuk mengekspor tabel data ke file CSV.

Jika Anda ingin menggabungkan data dari beberapa tabel, Anda dapat menggunakan tampilan, atau bahkan menulis pernyataan SQL

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

(mengingat bahwa kolom sering kali dapat berisi data yang menyertakan koma, jadi Anda mungkin ingin menggunakan karakter yang lebih tidak biasa - atau kumpulan karakter - sebagai pemisah.)

Cara cepat lainnya untuk melakukan sesuatu adalah dengan menggunakan fungsi pelaporan HTML SQL*Plus. Banyak alat spreadsheet dapat mengimpor HTML dan XML yang terstruktur dengan baik tanpa harus disadap. Cari tahu lebih lanjut.

Jika Anda ingin meratakan struktur hierarkis atau sesuatu yang lebih berbelit-belit, Anda mungkin perlu pindah ke PL/SQL. Pendekatan manual akan menggunakan varian dari pernyataan di atas yang cocok untuk menggunakan 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;

Jika Anda ingin mengekspor secara khusus ke Excel (yaitu file .XLS) maka Anda harus melampaui bawaan Oracle. Solusi biasa untuk mengekspor langsung dari PL/SQL ke Excel adalah pembungkus OWA_SYLK Tom Kyte untuk api SYLK. Cari tahu lebih lanjut.

Ini bekerja dengan lembar kerja tunggal. Jika Anda ingin mengekspor ke beberapa lembar kerja, ada beberapa solusi alternatif.

Sanjeev Sapre memiliki paket get_xl_xml-nya. Seperti namanya, ia menggunakan XML untuk melakukan transformasi. Temukan lebih banyak lagi.

Jason Bennett telah menulis objek PL/SQL yang menghasilkan dokumen XML Excel. Cari tahu lebih lanjut.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara menyimpan data unicode ke oracle?

  2. Bidang Boolean di Oracle

  3. Apakah COUNT(rowid) Lebih Cepat Dari COUNT(*)?

  4. Mencetak nilai variabel di SQL Developer

  5. Kursor dalam prosedur mengembalikan lebih banyak nilai daripada kueri