0

我的同事在尝试将数据从 Oracle 数据库导出到 CSV 时遇到了一些问题。奇怪的是,如果他oc_cr_comments用 NULL 替换字段中的空格,则导出工作。

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
4

1 回答 1

1

在对 的调用中utl_file.fopenmax_linesize指定的是什么?删除空格之前的行有多长?删除空格后的行有多长?

我的猜测是,当您打开文件时,您指定的最大行大小小于删除空格之前的实际行大小。如果删除空格导致行大小现在小于最大行大小,这将解释为什么在您进行替换后它会起作用。

于 2013-03-15T21:53:03.017 回答