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

ora-01406 Грешка при извличане на стойности чрез OCI

Грешката, посочена във въпроса, е коригирана в 10.2.0.3 и грешката се дава само във версиите на Oracle преди това. Редактиране:Същият проблем беше наблюдаван в Oracle 10.2.0.4. Все още разглеждаме това

Edit2:Когато дефинирате курсори за CHAR/VARCHAR колони в OCI (използваме обвивка за тази цел), размерът на низа, който е обвързан с колона, трябва да бъде поне един по-голям от максималната ширина на колоната.

напр. Име на колона:U_NAME Тип:VARCHAR(30)

1.char zName[30];pCursor->Define(zName, 3O); // това ще се срине, ако колоната има стойност с 30 знака

2.char zName[31];pCursor->Define(zName, 3O); // това ще се срине, ако колоната има стойност с 30 знака

3.char zName[31];pCursor->Define(zName, 31); // Правилно. няма да се срине за никаква стойност



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle (PL/SQL):Връщането на актуализацията едновременно ли е?

  2. Как можете да разберете кой файл tnsnames.ora се използва от .net повикване?

  3. SQL за проверка за всички стойности в колоната

  4. Как да добавя ненулева колона и ограничение за проверка в един ред в Oracle 11g?

  5. Как да регистрирам/проследя извиквания на съхранени процедури на Oracle със стойности на параметри?