Я использую общий запрос, который я называю «dump» (почему? Я не знаю), который выглядит так:
SET NEWPAGE NONE
SET PAGESIZE 0
SET SPACE 0
SET LINESIZE 16000
SET ECHO OFF
SET FEEDBACK OFF
SET VERIFY OFF
SET HEADING OFF
SET TERMOUT OFF
SET TRIMOUT ON
SET TRIMSPOOL ON
SET COLSEP |
spool &1..txt
@@&1
spool off
exit
Затем я вызываю SQL * Plus, передавая фактический сценарий SQL, который я хочу запустить в качестве аргумента:
sqlplus -S user/password@database @dump.sql my_real_query.sql
Результат записывается в файл
my_real_query.sql.txt
.