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

Błąd Oracle.Dataaccess ORA-06502:PL/SQL:błąd liczbowy lub wartościowy:zbyt mały bufor ciągu znaków

Znalazłem odpowiedź.

Dla parametru OUT zadeklarowałem rozmiar do max varchar - 32767 i zaczął działać.

Aby uprościć, przechowywana procedura zwraca parametr OUT typu VARCHAR2. Ale aby wykorzystać te dane wyjściowe z .NET, przekazywałem VARCHAR2 bez żadnego rozmiaru. Tak więc przestrzeń bufora przydzielona do odbioru wartości zwracanej wynosiła 0 bajtów. Gdy proc zwraca wartość większą niż przydzielony bufor, która wynosi 0 bajtów, pojawia się błąd.

Więc określiłem maksimum VARCHAR2-32767 w kodzie C# i zaczęło działać :).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Niepowodzenie prostej procedury Oracle

  2. Wywołaj funkcję pl/sql w javie?

  3. Nie można naprawić błędu:zignorowano instrukcję PL/SQL

  4. jak podzielić kolumny w wyniku zapytania w bazie danych Oracle

  5. Kombinacje z pojedynczej tabeli pogrupowane według wartości kolumny