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;