Je zou ook het volgende kunnen gebruiken, hoewel het wel spaties tussen velden introduceert.
set colsep , -- separate columns with a comma
set pagesize 0 -- No header rows
set trimspool on -- remove trailing blanks
set headsep off -- this may or may not be useful...depends on your headings.
set linesize X -- X should be the sum of the column widths
set numw X -- X should be the length you want for numbers (avoid scientific notation on IDs)
spool myfile.csv
select table_name, tablespace_name
from all_tables
where owner = 'SYS'
and tablespace_name is not null;
Uitvoer zal zijn als:
TABLE_PRIVILEGE_MAP ,SYSTEM
SYSTEM_PRIVILEGE_MAP ,SYSTEM
STMT_AUDIT_OPTION_MAP ,SYSTEM
DUAL ,SYSTEM
...
Dit zou een stuk minder vervelend zijn dan alle velden uit te typen en ze met komma's samen te voegen. Je zou desgewenst een eenvoudig sed-script kunnen gebruiken om witruimte te verwijderen die vóór een komma staat.
Zoiets zou kunnen werken... (mijn sed-vaardigheden zijn erg roestig, dus dit zal waarschijnlijk werk nodig hebben)
sed 's/\s+,/,/' myfile.csv