我在控制文件中使用以下命令
OPTIONS (SKIP=0)
LOAD DATA
BADFILE "Load_bad.bad"
TRUNCATE
INTO TABLE LOAD_DATA
FIELDS TERMINATED BY '|'
OPTIONALLY ENCLOSED BY '"'
TRAILING NULLCOLS
{
"NAME" char
"AGE" char
"ID" char
"REASON" char
"INTEREST" char
"EXPERIENCE" char
}
我正在为控制文件传递以下值,但由于双引号问题,这些值未加载到 Oracle 数据库中。如何删除双引号并将其加载到数据库中。任何人都可以分享您关于如何在控制文件中处理这种情况的想法。
myname|12|11|"need to switch" to parent|"java" c|2|
值未加载到 oracle 数据库中。如果我删除双引号,则数据将加载到表中,但我希望控制文件处理双引号。
不要更改控制文件,而是通过将值括在双引号中并通过将它们加倍来转义双引号来修复数据:
myname|12|11|"""need to switch"" to parent"|"""java"" c"|2|
或者,如果您没有在任何值周围使用双引号,则删除:
OPTIONALLY ENCLOSED BY '"'