sqlldr ORA-01722: неверный номер из-за десятичного числа в столбце csv - PullRequest
0 голосов
/ 18 января 2019

Я пытаюсь загрузить данные из CSV-файла в таблицу orcale. Я использую sqlldr с контрольным файлом Все работает нормально, но в некоторых случаях строка не загружается из-за десятичного числа. Таким образом, в таблице оракула столбец: Число (10) - это не должно быть проблемой и мой контрольный файл выглядит так: (их около 15 столбцов, но в основном это около столбца количество_1

OPTIONS (SKIP=1)
LOAD DATA 
 INFILE *
 APPEND
 INTO TABLE ..
 FIELDS TERMINATED BY ";" OPTIONALLY ENCLOSED BY '"' 
(
 Quantity_1, Quantity_2, Quantity_3,
)

В CSV-файле строки для количества_1 имеют вид

2.58
4343
232
1212

и для первого ряда он выдает ошибку:

ORA-01722: invalid number

Кто-нибудь может помочь с этим ??

1 Ответ

0 голосов
/ 23 января 2019

Если ваш столбец определен как число (10), он должен быть округлен до 3 при вставке. Я подозреваю, что ваши реальные данные больше, чем 2,58. В любом случае, ваш столбец должен быть определен как число (12,2), то есть всего 12 цифр, 2 из которых слева от десятичной точки. т.е. 9999999999,99

...