ORA-1722 є Невірний номер. Ми намагалися явно або неявно перетворити рядок символів на число, але це не вдалося. Це може статися з кількох причин. Зазвичай це відбувається лише в SQL (під час виконання запиту), а не в plsql (plsql створює інший виняток для цієї помилки).
за заміна пропусків нулями, помилку можна усунути. Є способи вирішити цю проблему, спершу спробувавши «INSERT INTO… VALUES (…)». Виконайте наведені вище дії; перевірте дані, які ви вводите, щоб переконатися, що числові значення збігаються, і виправте всі недійсні.
Причина: Спроба перетворити рядок символів на число не вдалася, оскільки рядок символів не був дійсним числовим літералом. В арифметичних функціях або виразах можна використовувати лише числові поля або поля символів, що містять числові дані. До дат можна додавати або віднімати лише числові поля.
відповідь: Ця помилка викликана неправильним форматуванням в одному з ваших рядків імпорту. Цей рядок вказує, наскільки далеко просунувся процес, перш ніж зіткнутися з проблемою. Excel часто виправляє проблеми з форматуванням і розривом рядків/інтервалами, через що важко знайти проблему.
Є багато причин, що викликають ORA-01722: недійсний номер, щоб вирішити цю проблему, ви повинні порівняйте числовий стовпець із стовпцем символів, роблячи це, він гарантує, що в таблиці маска формату вміщуватиме всі можливі рядки символів.
Подивіться на значення в стовпцях, які ви очікуєте бути числовими, щоб визначити ті, які виглядають як очевидні символи. Якщо ви не можете легко визначити, ви можете виконати TO_NUMBER у стовпцях, щоб знайти помилку. Якщо це не допомогло, спробуйте отримати DISTINCT список кожного стовпця в підзапиті, а потім виконайте TO_NUMBER.