Oracle
 sql >> база данни >  >> RDS >> Oracle

Получаване на странен проблем с функция TO_NUMBER в Oracle

Това не е добра практика. Числените данни трябва да се съхраняват в NUMBER колони. Причината е проста:ако не наложим силен тип данни, може да се окажем с нечислови данни в нашата колона varchar2. Ако това се случи, филтър като този

where to_number(field1) = 23 

ще се провали с ORA-01722: invalid number .

Не мога със сигурност да кажа, че това се случва във вашия сценарий, защото не разбирам защо очевидно незначителни промени във филтрите на ID са променили успеха на заявката. Би било поучително да видите плановете за изпълнение за различните версии на заявките. Но мисля, че е по-вероятно да е проблем с вашите данни, отколкото грешка в SGA.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. как да прехвърлите създадената от потребителя връзка в хибернация

  2. Oracle, PDO_OCI срещу OCI8

  3. Разработване за Windows Server 2003 64 бита на Windows XP 32 бита

  4. Как да извикам SELECT през DBLINK през DBLINK?

  5. Възможно ли е да се предаде името на таблицата като параметър в Oracle?