У меня есть таблица в оракуле с столбцом BLOB
, который может хранить XML-файлы, а также XMLs
zipped. Это требования заказчика и не могут быть изменены. Таблицы будут созданы, и я должен прочитать и работать с некоторой информацией внутри BLOBs
.Вставить тестовую строку BLOB больше 2000 или 4000 байт
Я исследовал, и любые из нечетких решений были ясны или работали для меня.
Проблема я столкнулся в том, что к INSERT
XML
равнинных данных размером более 2000 bytes
с utl_raw.cast_to_raw
использованием DBeaver
в качестве менеджера баз данных. Я получил сообщение:
SQL Error [6502] [65000]: ORA-06502: PL/SQL: numeric or value error: raw variable length too long ORA-06512: at "SYS.UTL_RAW", line 224
java.sql.SQLException: ORA-06502: PL/SQL: numeric or value error: raw variable length too long
ORA-06512: at "SYS.UTL_RAW", line 224
Проблемы
- Я исследовал и
UTL_RAW
не может быть больше, чем2000 bytes
- кажется, что есть еще одно ограничение
4000 bytes
дляBLOBs
в Oracle
Что я могу сделать для этих случаев?
Что вы хотите сделать? Загрузите zip-файл в колонку blob? –
Спасибо за ваш интерес. Проблема, с которой я сталкиваюсь, заключается в том, что для INSERT XML plain data больше 2000 байт с utl_raw.cast_to_raw – Weslor
Что вы используете для вставки данных. Приложение SQPLUS или java? –