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

Cara Mengekspor Hasil Kueri ke File .txt saat menggunakan SQLcl (Oracle)

Saat menanyakan Database Oracle, Anda dapat menggunakan SPOOL perintah untuk mengekspor hasil kueri Anda ke file teks saat menggunakan SQLcl.

Contoh

Berikut ini contoh yang mengekspor seluruh tabel:

SPOOL '/Users/barney/data/regions.txt';
SELECT * FROM regions;
SPOOL off;

Inilah yang dilakukannya, baris demi baris:

  • Baris pertama menggunakan SPOOL perintah untuk menentukan di mana file output akan ditulis. Pastikan untuk mengubah /Users/barney/data/regions.txt ke lokasi di sistem Anda, dan nama file yang sesuai.
  • Pada baris kedua, saya menjalankan kueri SQL – hasil yang saya ekspor. Dalam hal ini, saya mengekspor seluruh regions meja.
  • Selanjutnya, saya mengubah SPOOL mati.

Berikut tampilan file yang dihasilkan:

   REGION_ID               REGION_NAME 
____________ _________________________ 
           1 Europe                    
           2 Americas                  
           3 Asia                      
           4 Middle East and Africa    

4 rows selected. 

Dalam kasus saya, SQLFORMAT saya disetel ke ansiconsole , dan output mencerminkan hal itu.

Anda dapat mengubah ini ke format apa pun yang sesuai.

Berikut adalah contoh mengekspor hasil dalam format yang dapat digunakan sebagai file impor dengan sql*loader:

SET SQLFORMAT loader
SPOOL '/Users/barney/data/regions_loader.txt';
SELECT * FROM regions;
SPOOL off;
SET SQLFORMAT ansiconsole

Hasil:

 1|"Europe"|
 2|"Americas"|
 3|"Asia"|
 4|"Middle East and Africa"|

4 rows selected. 

Dalam hal ini saya juga mereset SQLFORMAT kembali ke ansiconsole setelah SPOOL operasi telah selesai.

Hapus Masukan

Anda dapat menghapus X rows selected dengan SET FEEDBACK off :

SET SQLFORMAT ansiconsole
SET FEEDBACK off
SPOOL '/Users/barney/data/regions_no_feedback.txt';
SELECT * FROM regions;
SPOOL off;
SET FEEDBACK on

Hasil:

   REGION_ID               REGION_NAME 
____________ _________________________ 
           1 Europe                    
           2 Americas                  
           3 Asia                      
           4 Middle East and Africa    

Dalam hal ini saya mengubah FEEDBACK hidupkan kembali setelah mengekspor file.

Tambahkan Hasil

Secara default, SPOOL menggunakan REPLACE , yang menggantikan file jika sudah ada.

Namun, kita dapat menggunakan APPEND argumen untuk menambahkan hasil ke file.

Contoh:

SET SQLFORMAT ansiconsole
SET FEEDBACK off
SPOOL '/Users/barney/data/regions_no_feedback.txt' APPEND;
SELECT * FROM regions;
SPOOL off;
SET FEEDBACK on

File yang dihasilkan:

   REGION_ID               REGION_NAME 
____________ _________________________ 
           1 Europe                    
           2 Americas                  
           3 Asia                      
           4 Middle East and Africa    

   REGION_ID               REGION_NAME 
____________ _________________________ 
           1 Europe                    
           2 Americas                  
           3 Asia                      
           4 Middle East and Africa    

Contoh ini menambahkan hasil ke file yang dibuat (dan diisi) pada contoh sebelumnya. Ini mengakibatkan hasil digandakan dalam file.

Timpa File yang Ada

Kita dapat menggunakan REPLACE untuk menimpa file yang ada dengan hasil kueri baru:

SET SQLFORMAT ansiconsole
SET FEEDBACK off
SPOOL '/Users/barney/data/regions_no_feedback.txt' REPLACE;
SELECT * FROM regions;
SPOOL off;
SET FEEDBACK on

File yang dihasilkan:

   REGION_ID               REGION_NAME 
____________ _________________________ 
           1 Europe                    
           2 Americas                  
           3 Asia                      
           4 Middle East and Africa    

Seperti yang disebutkan, REPLACE adalah pengaturan default, jadi kita bisa saja mengabaikan argumen ini sama sekali.


  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 DB Server + APEX + ORDS + JasperReports dari awal (Bagian 4)

  2. Menemukan penyebab kesalahan kebuntuan dari file jejak Oracle

  3. SQLRecoverableException:Pengecualian I/O:Reset koneksi

  4. Bagaimana cara mengubah 2 kueri dengan kolom umum (A, B) dan (A, C) menjadi hanya satu (A, B, C)?

  5. Langkah-langkah untuk mengubah Kata Sandi Admin yang hilang atau terlupakan dari EBS WebLogic Domain R12.2