0
我的同事在嘗試將數據從Oracle數據庫導出爲CSV時遇到了一些問題。奇怪的是,如果他用NULL替換字段oc_cr_comments
中的空格,那麼導出就起作用。將數據從Oracle數據庫導出爲CSV時出現ORA錯誤
TRIM (REPLACE(oc_cr_comments, CHR(32), NULL))
什麼可能導致通過用NULL替換空格解決的導出問題?
錯誤輸出是:
ERROR at line 1:
ORA-29285: file write error
ORA-06512: at "SYS.UTL_FILE", line 140
ORA-06512: at "SYS.UTL_FILE", line 785
ORA-06512: at "EFS.P_CRIMINAL_DISPOSITION", line 151
ORA-06512: at line 1
就是這樣! [Oracle doc](http://docs.oracle.com/cd/B19306_01/appdev.102/b14258/u_file.htm)指出,如果未指定,max_linesize默認爲1024,的記錄長約1400個字符。他應該爲max_linesize選擇什麼樣的價值?指定更高的值有什麼不利之處? – theblang 2013-03-18 14:52:47
@mattblang - 任何值高達32K的作品。選擇較大行長度的唯一缺點是,如果某個下游系統會出現文件問題,並且/或者如果使用行長作爲一種約束來確保數據有效。 – 2013-03-18 15:39:41