Meminta penyedia Anda untuk memperbaiki file data mungkin bukan pilihan, tetapi saya akhirnya menemukan solusi yang mengharuskan Anda memperbarui file kontrol sedikit untuk menentukan karakter "ditutup oleh" untuk setiap bidang, bukan untuk semua bidang.
Untuk kasus saya, saya memiliki masalah di mana jika bidang [first_name] masuk dengan tanda kutip ganda yang membungkus nama panggilan, itu tidak akan dimuat. (EG:Jonathon "Jon"). Dalam file data nama ditampilkan sebagai "Jonathon "Jon"" . Jadi "terlampir oleh" membuat kesalahan karena ada tanda kutip ganda di sekitar nilai dan tanda kutip ganda di sekitar bagian dari nilai ("Jon"). Jadi, alih-alih menetapkan bahwa nilai harus diapit oleh tanda kutip ganda, saya menghilangkannya dan menghapus tanda kutip secara manual dari string.
Load Data
APPEND
INTO TABLE MyDataTable
fields terminated by "," ---- Noticed i omitted the "enclosed by"
TRAILING NULLCOLS
(
column1 enclosed by '"', --- Specified "enclosed by" here for all cols
column2 enclosed by '"',
FIRST_NAME "replace(substr(:FIRST_NAME,2, length(:FIRST_NAME)-2), chr(34) || chr(34), chr(34))", -- Omitted "enclosed by". substr removes doublequotes, replace fixes double quotes showing up twice. chr(34) is charcode for doublequote
column4 enclosed by '"',
column5 enclosed by '"'
)