Oracle
 sql >> Database >  >> RDS >> Oracle

Comando Spool:non emette l'istruzione SQL su file

Sfortunatamente SQL Developer non rispetta completamente il set echo off comando che (sembra) risolvere questo problema in SQL*Plus.

L'unica soluzione che ho trovato per questo è salvare ciò che stai facendo come script, ad es. test.sql con:

set echo off
spool c:\test.csv 
select /*csv*/ username, user_id, created from all_users;
spool off;

E poi da SQL Developer, chiama solo quello script:

@test.sql

Ed eseguilo come script (F5).

Il salvataggio come file di script non dovrebbe comunque essere molto difficile per qualcosa di diverso da una query ad hoc; ed eseguirlo con @ invece di aprire lo script ed eseguirlo direttamente è solo un po' una seccatura.

Un po' di ricerca ha trovato la stessa soluzione sul forum degli sviluppatori SQL e il team di sviluppo suggerisce che è un comportamento intenzionale imitare ciò che fa SQL*Plus; devi eseguire uno script con @ anche lì per nascondere il testo della query.