Kumar from madras Ответов: 2

буфер символьной строки слишком мал


ВСЕМ ПРИВЕТ

Во время отладки процедуры я получаю
"ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512:"



Вышеприведенная ошибка возникает в части исключения, когда при объединении ошибок в переменную я получаю слишком маленькую ошибку буфера.

После назначения правильного типа данных с огромным размером я получаю вышеуказанную ошибку.

Я использую VARCHAR2 в качестве типа данных для этой переменной.

Может ли кто-нибудь найти решение моей проблемы.

Пожелания
Джагадеш

krumia

Пожалуйста, оставьте свой код. Ничего не могу сказать по этому описанию.

2 Ответов

Рейтинг:
1

Member 14673884

моя хранимая процедура имела "ключи" в качестве выходного параметра в определении.

команда.Parameters.Add("ключи", OracleDbType.Varchar2, 32767).Направление = ParameterDirection.Выход;

исправил это для меня ... передавая размер выходной переменной varchar вдоль типа.

надеюсь, это поможет кому-то, кто ищет решение этой ошибки. - Я.


Рейтинг:
0

Sandeep Mewara

Исходя из приведенного ниже обсуждения, похоже, что типа данных переменной недостаточно для хранения передаваемых ей данных.
В пределах PL/SQL varchar2 может быть длиной до 32767;

Вам нужно увеличить объем данных, выделив больше места. В обсуждениях ниже есть несколько ответов, предлагающих способы сделать это, посмотрите, помогут ли они:
ORA-06502 символьный строковый буфер слишком мал...1[^]
ORA-06502 символьный строковый буфер слишком мал...2[^]