Сначала я спросил об этом в Superuser, но кто-то посоветовал мне сделать репост здесь.
Я использую последние версии APEX (4.1.1) и Oracle (11.2.0.3).
Я загружаю данные CSV в набор таблиц.
Я пробовал это сделать и столкнулся с некоторыми проблемами, которых раньше не видел.
В качестве примера я попытался импортировать данные в эту таблицу:
CREATE TABLE SW_ENGINEER
(ENGINEER_NO VARCHAR2(10),
ENGINEER_NAME VARCHAR2(50),
CONSTRAINT SW_ENG_PK PRIMARY KEY (ENGINEER_NO))
Ошибка в этом упрощенном подмножестве данных:
call log no,contract_no,call date,agreed date,agreed time,actual arrive,engineer no,engineer name,equipment code,cust desc,eng desc
a,b,c,22-Mar-06,1,23/03/2006 15:00,654,Flynn Hobbs,d,e,f
a,b,c,22-Mar-06,2,23/03/2006 15:00,654,Flynn Hobbs,d,e,f
a,b,c,19-Mar-06,3,19/03/2006 09:15,351,Rory Juarez,d,e,f
(он не работает на большом наборе данных)
Я не могу загрузить его с помощью APEX или SQL Developer, как указано ниже:
- APEX: С помощью APEX Data Workshop импортируйте текст, загрузите существующую таблицу, используйте разделенные запятыми, выберите таблицу и файл, отметьте флажок «строка заголовка», и у нас будет форма отображения столбца, показывающая правильные данные. Затем установите все столбцы, кроме engineer_no и engineer_name, как «Нет» и нажмите «Загрузить данные».
Это похоже на работу и отображает итоговую строку в репозитории загрузки текстовых данных, но при проверке она загрузила 0 строк и 79 завершилась неудачно. Нажатие на 79 показывает, что все они пострадали от «ORA-01008: не все переменные связаны». Выделенные столбцы выглядят нормально для меня, поэтому мне интересно, включает ли он еще некоторые, несмотря на настройки «Нет»?
Проблема не возникает, если я отредактирую csv для удаления ненужных столбцов перед загрузкой, но было бы намного проще, если бы я мог использовать сопоставление столбцов.
- Разработчик SQL: используя мастер импорта данных в SD, я обнаружил, что он не перейдет к отображению столбцов, если не проверена строка заголовка (кнопка включена, но не работает - почему нет?), - но если она проверяется (правильно в этом случае), тогда шаг проверки завершается неудачно, потому что «Столбец таблицы Engineer_no недостаточно велик ...».
Я обнаружил, что это можно преодолеть, удалив значения заголовков из столбцов файла csv. Таким образом, похоже, что установка флажка «Строка заголовка» фактически не приводит к тому, что он вообще игнорирует строку заголовка, и именно значение заголовка «Engineer-no» вызывает ошибку. Что мне не кажется правильным.
Я использовал оба подхода без проблем в прошлом, и мне интересно, как недавнее обновление как-то связано с этим.
Есть идеи? Или я что-то упускаю очевидное?