Я передаю документ XML в процедуру Oracle и получаю как xmlType.Для сохранения данных изображения в поле xml есть одно поле fruitImage.Я пытаюсь сохранить содержимое imageField в переменной v_fruitImage, но получаю ошибку базы данных «ORA-01706: слишком велико значение результата пользовательской функции».Ниже приведен код:
- XML Doc
<fruit fruitId="4" fruitName="mango" fruitImage="ZGF0YTppbWFnZS9qcGVnO2Jhc2U2NCwvOWovNEFBUVNrWkpSZ0FCQVFBQUFRQUJBQUQvL2dBN1ExSkZRVlJQVWpvZ1oyUXRhbkJsWnlCMk1TNHdJQ2gxYzJsdVp5QkpTa2NnU2xCRlJ5QjJPREFwTENCeGRXRnNhWFI1SUQwZ09EQUsvOXNBUXdBR0JBVUdCUVFHQmdVR0J3Y0dDQW9RQ2dvSkNRb1VEZzhNRUJjVUdCZ1hGQllXR2gwbEh4b2JJeHdXRmlBc0lDTW1KeWtxS1JrZkxUQXRLREFsS0Nr........(very big length)">
.....
.....
</fruit>
Инструкция для извлечения значения из xml.
ВЫБРАТЬ Fr.fruitId, Fr.fruitName, Fr.fruitImage INTO v_fruitId, v_fruitName, v_fruitImage FROM XMLTABLE ('/ fruit' PASSING i_xml COLUMNS fruitId INT PATH)'@fruitId', fruitName CHAR (1) PATH '@fruitName', fruitImage BLOB PATH '@fruitImage') Fr;
Пожалуйста, помогите мне, как сохранить поле изображения из документа xml впеременная BLOB.