Я загружаю некоторые данные в Oracle через SQLLDR. Исходный файл является «ограниченным контуром».SQL * Loader: Работа с разделителями в данных
FIELDS TERMINATED BY '|'
Но некоторые записи содержат символ трубы в данных, а не как разделитель. Таким образом, он прерывает правильную загрузку записей, поскольку понимает indata символы трубы в качестве терминатора поля.
Можете ли вы указать мне направление для решения этой проблемы?
Файл данных составляет около 9 ГБ, поэтому его трудно редактировать вручную.
Например,
нагруженное ряд:
АВС | 1234567 | СТР 9 R 25 | 98734959,32 | 28.12.2011
Отклонено Ряд:
DE4 | 2346543 | WE | 454 | 956584,84 | 28.11.2011
Ошибка:
Rejected - Error on table HSX, column DATE_N.
ORA-01847: day of month must be between 1 and last day of month
DATE_N колонна является последним.
Можете ли вы привести пример линии с проблемами? –
Являются ли поля с трубками '' 'заключенными в кавычки? например 'DATA1 | DATA2 |" DATAWITH | PIPE "| DATA3'. В этом случае вы можете использовать 'FIELDS TERMINATED BY '|' OPTIONALLYED BY '"'' –
@FlorinGhita обновлено – bonsvr