NCLOB в VARCHAR2

Я пытаюсь преобразовать NCLOB в VARCHAR2 в Oracle, но получаю следующую ошибку:

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

Вот код, который я использую:

select substr(TO_NCHAR(NCLOB_FIELD),1,3800)
from TABLE

Есть ли способ обойти эту ошибку?

1 ответ

Решение

Положить SUBSTR перед конвертацией и используйте меньший размер:

select TO_NCHAR(substr(NCLOB_FIELD,1,2000))
from TABLE;
Другие вопросы по тегам