Oracle
 sql >> Baza danych >  >> RDS >> Oracle

ora-01406 Błąd podczas pobierania wartości za pomocą OCI

Błąd wymieniony w pytaniu został naprawiony w wersji 10.2.0.3, a błąd występuje tylko we wcześniejszych wersjach Oracle.Edytuj:Ten sam problem zaobserwowano w wersji Oracle 10.2.0.4. Nadal się tym zajmujemy

Edit2:Definiując kursory dla kolumn CHAR/VARCHAR w OCI (używamy w tym celu wrappera), rozmiar łańcucha, który jest powiązany z kolumną musi być przynajmniej o jeden większy niż maksymalna szerokość kolumny.

np. Nazwa kolumny:U_NAME Typ:VARCHAR(30)

1.char zName[30];pCursor->Define(zName, 3O); // to się zawiesi, jeśli kolumna ma wartość z 30 znakami

2.char zName[31];pCursor->Define(zName, 3O); // to się zawiesi, jeśli kolumna ma wartość z 30 znakami

3.char zName[31];pCursor->Define(zName, 31); // Prawidłowy. nie ulegnie awarii dla żadnej wartości



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak używać punktów zapisu w procedurze oracle

  2. Wiersze do kolumny w ORACLE

  3. Tabela pochodna Oracle sql — opcjonalny aliasing

  4. Wyszukaj wartość w kolumnie wartości, która przechowuje wartości oddzielone przecinkami

  5. Ile indeksów bazy danych to za dużo?