【发布时间】:2020-04-27 07:50:58
【问题描述】:
我正在将表格的内容作为使用 TRIMSPOOL ON 选项分隔的管道假脱机到平面文件中。最后一列的默认值为 BLANK SPACE (' ')。 trimspool 正在修剪该值,因此该值变为 NULL,因此验证不成功,因为该列不是 NULL。有什么办法可以在不改变列顺序的情况下解决这个问题。
【问题讨论】:
标签: oracle unix plsql oracle-sqldeveloper spool
我正在将表格的内容作为使用 TRIMSPOOL ON 选项分隔的管道假脱机到平面文件中。最后一列的默认值为 BLANK SPACE (' ')。 trimspool 正在修剪该值,因此该值变为 NULL,因此验证不成功,因为该列不是 NULL。有什么办法可以在不改变列顺序的情况下解决这个问题。
【问题讨论】:
标签: oracle unix plsql oracle-sqldeveloper spool
尝试SET TRIMOUT ON而不是SET TRIMSPOOL ON,因为它不会影响假脱机输出。下面的定义
SET TRIMOUT ON
Determines whether SQL*Plus allows trailing blanks at the end of each
displayed line. ON removes blanks at the end of each line, which may
improve performance especially when you access SQL*Plus from a slow
communications device. TRIMOUT ON does not affect spooled output.
或者您可以在加载数据时使用NVL(col_last,' ')
【讨论】: