Ошибка-ORA-22835: буфер слишком мал для CLOB до CHAR или преобразования BLOB в RAW

Вопрос:Я пытаюсь прочитать сообщение blob и отображать его как переменную в одной из моих процедур, но я получаю ошибку ниже: Ошибка - ORA-22835: буфер слишком мал для CLOB до CHAR или BLOB-RAW преобразование (фактическое: 9923, максимум: 2000) У меня есть googled и найдено предложение обрезать сообщение blob, как показано ниже, но скорее отобразит полное сообщение

Вопрос:

Я пытаюсь прочитать сообщение blob и отображать его как переменную в одной из моих процедур, но я получаю ошибку ниже:

Ошибка – ORA-22835: буфер слишком мал для CLOB до CHAR или BLOB-RAW преобразование (фактическое: 9923, максимум: 2000)

У меня есть googled и найдено предложение обрезать сообщение blob, как показано ниже, но скорее отобразит полное сообщение blob в виде строки.

UTL_RAW.CAST_TO_VARCHAR2(dbms_lob.substr(variable_name,2000,1))

Как я могу отобразить полное сообщение? Есть ли настройка на уровне базы данных или процедуры, которую я могу изменить?

Лучший ответ:

Мне это удалось, используя опцию, описанную в

http://www.dba-oracle.com/t_convert_blob_varchar_datatype.htm

Ответ №1

Попробуйте использовать DBMS_LOB.GETLENGTH() вместо обрезки строки

Оцените статью
Добавить комментарий