Загрузить CSV-файл в несколько таблиц Oracle
Я создал контрольный файл, используя TOADs SQL* Loader Wizard
, Я использовал указанные две таблицы для загрузки данных, но после запуска данные загрузились только в одну таблицу, и был создан файл dsc. Ниже контрольный файл, который я использую:
LOAD DATA
INFILE '\\ANKH\Logs\production export 2012-12-06\BS7666CSV_001.csv'
BADFILE '\\ANKH\Logs\production export 2012-12-06\BS7666CSV_001.bad'
DISCARDFILE '\\ANKH\Logs\production export 2012-12-06\BS7666CSV_001.dsc'
INTO TABLE "STREET"
TRUNCATE
WHEN (record_id = '11')
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"' AND '"'
(RECORD_ID,
CHANGE_TYPE,
PRO_ORDER,
USRN,
TYPE,
AUTH_CODE,
STATE,
STATE_DATE,
SURFACE,
CLASS,
VERSION,
START_DATE,
END_DATE,
LAST_UPDATE_DATE,
ENTRY_DATE,
START_X_COORD,
START_Y_COORD,
END_X_COORD,
END_Y_COORD,
TOLERANCE)
INTO TABLE "STREET_DESCRIPTOR"
TRUNCATE
WHEN (record_id = '15')
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"' AND '"'
(RECORD_ID,
CHANGE_TYPE,
PRO_ORDER,
USRN,
DESCRIPTOR,
LOCALITY,
TOWN,
ADMIN_AREA,
LANGUAGE)
1 ответ
Я понял, что мне не хватает ключевого слова POSITION(1)
во втором INTO TABLE
оператор для сброса указателя на начало записи.