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

Cara Mengekspor hasil pernyataan pilih dengan benar ke file Csv menggunakan spool di pengembang Oracle sql

Pilihan Anda tidak lengkap karena Anda tidak memiliki from klausa, tetapi tidak yakin apakah Anda kehilangan itu di salin dan tempel. Karena tidak ada yang dijalankan, karena pernyataan parsial tidak pernah dieksekusi (tidak ada penghentian ; atau / pada baris berikutnya). Jika Anda memiliki from farmers; klausa maka itu akan menampilkan perintah ditambah kesalahan ORA-00923, mungkin.

Anda tidak bisa hanya menempatkan koma yang dikutip di antara bidang, Anda perlu menggabungkan bidang dengan karakter itu menggunakan || simbol gabungan:

spool 'c:\farmerList.csv'

select FIRSTNAME
    ||','|| LASTNAME
    ||','|| TRN
    ||','|| CELL
    ||','|| PARISH
from farmers;

memberikan file yang berisi

Joe,Grundy,X,Y,Ambridge

Kolom tidak harus berada pada baris yang terpisah, menurut saya lebih mudah untuk membaca dan melacak koma.

Anda tidak memerlukan / setelah perintah spool - yang akan mengeksekusi ulang pernyataan terakhir sebelum spool , jika ada - dan Anda tidak memerlukan tanda kutip di sekitar nama file spool kecuali jika berisi spasi, tetapi tidak ada salahnya.

Ada juga set colsep perintah yang dapat Anda gunakan untuk membuat pemisah kolom menjadi koma, tetapi Anda harus khawatir tentang padding, jadi saya merasa lebih mudah untuk menggabungkan kolom bersama-sama seperti yang Anda (hampir) lakukan.

Kecuali itu untuk SQL*Plus, karena saya tidak melihat referensi SQL Developer di judulnya. Spool agak aneh di Pengembang karena tampaknya menjebak dan menggemakan hal-hal yang mungkin tidak Anda inginkan, dan tidak semua set perintah berfungsi (yang mana tergantung pada versinya).

Cara yang lebih aman dan disukai, menurut saya, adalah menjalankan kueri normal tanpa koma yang digabungkan:

select FIRSTNAME, LASTNAME, TRN, CELL, PARISH
from farmers;

dan dengan 'jalankan' daripada 'jalankan skrip', sehingga hasilnya muncul dalam tampilan kisi di jendela hasil kueri. Klik kanan pada grid dan pilih 'ekspor'. Anda kemudian dapat menyimpan sebagai CSV, atau bahkan sebagai XLS, dan dapat memilih untuk tidak memiliki baris header jika diinginkan.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. tabel atau tampilan tidak ada

  2. Cara menggunakan urutan Oracle DB tanpa kehilangan nomor urutan berikutnya jika terjadi roll-back

  3. Oracle ORA-00979 - bukan ekspresi GROUP BY

  4. OracleException (0x80004005) Saat Menghubungkan ke Database Oracle

  5. Cara melihat pernyataan Oracle SQL aktual yang sedang dieksekusi