【发布时间】:2020-06-12 19:44:18
【问题描述】:
我有一个管道分隔文件,其中最后一个字段包含逗号,如下所示:
COLOR|CAT|CODES
Red|Pass|tiger, 12@fol, letmein
Blue|Pass|jkd@332, forpw, wonton
Gray|Pass|rochester, tommy, 23$ai,
我用空格终止最后一列,一切正常,没有错误,除了它只会包含/读取最后一列中的第一个值和第一个逗号,例如Tiger、jkd@332 等。显然是因为逗号后面的空格。
如何在不出现任何错误的情况下包含逗号?我已经尝试过" "、/r、/n、/r/n,甚至在最后一列中排除了"terminated by",虽然这些可以包含逗号,但我会得到ORA-29913和@987654328每次我从外部表(包含数千条记录)中选择所有时,@reject 错误。
我的拒绝限制为10,但我不想将其更改为UNLIMITED,因为我不想忽略这些错误,我也无法更改文件。
我的代码:
--etc..
FIELDS TERMINATED BY '|'
OPTIONALLY ENCLOSED BY '"'
MISSING FIELD VALUES ARE NULL
--etc..
CODES CHAR TERMINATED BY WHITESPACE
【问题讨论】:
标签: sql oracle external-tables