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

Грешка в Oracle.Dataaccess ORA-06502:PL/SQL:числова или стойностна грешка:буферът на символен низ е твърде малък

Намерих отговора.

За параметъра OUT декларирах размера до max на varchar - 32767 и той започна да работи.

За опростяване, съхранената процедура връща параметър OUT от тип VARCHAR2. Но за да консумирам този изход от .NET, предавах VARCHAR2 без никакъв размер. Така че буферното пространство, разпределено за получаване на върнатата стойност, беше 0 байта. Когато proc върне стойността, по-голяма от разпределения буфер, който е 0 байта, се получава грешка.

Така че посочих максимума на VARCHAR2-32767 в C# кода и той започна да работи :).



  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 SQL заявка?

  2. Възможно ли е да се стартира SQLPLUS скрипт върху файл, кодиран като UTF-8 със спецификация

  3. Как да разделите низ в Oracle

  4. Предайте масив като входен параметър към съхранена процедура на oracle, използвайки просто jdbc извикване

  5. oracle jdbc драйвер версия лудост