我有一系列想要輸出到.csv文件的查詢。我必須查詢數據庫的唯一工具是SQL Developer。當試圖從SQL Developer中導出時,SPOOL返回空文件
我可以運行每個查詢,然後使用SQL Developer中的Export對話框將它們寫入文件,但這很麻煩,特別是當這需要每天爲多個文件完成時。
這適用於某些人 Directly export a query to CSV using SQL Developer
但它不爲我工作。
例如,如果我嘗試
spool "C:\Users\james.foreman\Downloads\Temp\myfile.csv"
select distinct placement_type
FROM jf_placements;
spool off;
然後在SQL Developer的腳本輸出窗口,我看到
無法創建假脫機文件C:\ Users \用戶james.foreman \下載\ TEMP \ myfile.csv
雖然myfile.csv已創建,但沒有結果。 (查詢返回了兩行)
我的第一個想法是寫入C:\ Users \ james.foreman \ Downloads \ Temp的權限問題 但似乎並非如此,因爲如果我刪除myfile.csv並運行SQL,則會重新創建myfile.csv文件,但它從來沒有任何內容。
所以我認爲這是一個配置問題,無論是在我正在運行SQL Developer的Windows機器上,還是與我的SQL Developer設置。我應該在哪裏尋求進一步調查?
@Devolus對Procedure to export table to multiple csv files的回答包括「在SQL窗口中右鍵單擊 - >將窗口更改爲 - >命令窗口」的指令,但是如果我右鍵單擊SQL窗口,我看不到更改窗口選項。
(運行Windows 7,SQL Developer版本4.0.2.15,構建15.21,數據庫是Oracle 11.2)
你可以從'SQL * Plus'嘗試相同的方法,看看這次文件是否有內容。 – 2014-09-24 05:46:16
嗨,我不能;我在這臺機器上只有SQL Developer,而不是SQL * Plus。 – JamesF 2014-09-24 07:57:35
看到我的答案。關於'SQL * Plus',我只是想讓你驗證一下。沒有問題,只需按照答案。 – 2014-09-24 08:27:37