我正在尝试使用SQLPlus查询Oracle数据库并将结果保存为CSV文件。我只想要数据,而不是SQLPlus选项提供的格式,例如numwidth
,linesize
和pagesize
等。
我不想使用bash或awk删除演示文稿格式来进行额外处理,也不想执行SELECT field1 || ',' || field2
等复杂查询
目前我正在尝试使用此处发布的方法,但在保存为CSV时,我仍然不清楚如何避免显示噪音。
https://chartio.com/resources/tutorials/how-to-write-to-a-csv-file-using-oracle-sql-plus/
set colsep ,
set headsep off
set pagesize 0
set trimspool on
set linesize 2
set numwidth 5
spool books.csv
SELECT
title,
primary_author
FROM
books;
spool off
这是8年前StackOverflow的问题和答案,但我希望现在有更好的方法。
How do I spool to a CSV formatted file using SQLPLUS?
感谢。
答案 0 :(得分:0)
我说SET ECHO OFF
困扰着你。试试吧。
此外,您可能希望书签以下一组SET命令。
SET ECHO OFF
SET VERIFY OFF
SET TRIMSPOOL ON
SET TRIMOUT ON
SET LINESIZE 9999
SET PAGESIZE 0
SET FEEDBACK OFF
SET TIMING OFF
SET TIME OFF
SET LONG 10000