Передача ArrayList в хранимую процедуру Oracle в Java - PullRequest
3 голосов
/ 26 июля 2010

Есть ли способ передать объект Java ArrayList в качестве параметра в хранимую процедуру Oracle? Я видел примеры передачи объекта Array в хранимую процедуру Oracle, но не объекта ArrayList. Возможно ли это?

1 Ответ

1 голос
/ 01 августа 2010

Нет. Если хранимая процедура Oracle находится в PL / SQL, вы должны преобразовать свой ArrayList (или любую реализацию List) в массив.

Если ваша хранимая процедура написана на Java, вы можете сериализовать свой ArrayList, отправить поток байтов в Oracle в виде длинной строки и воссоздать ее на стороне Oracle. Я сделал это около 10 лет назад для клиента, и это сработало очень хорошо. Существуют ограничения на длину строки, которую вы можете передать через интерфейс Java-Oracle, поэтому, если ваша структура данных велика, вам придется разделить ее на порции, которые будут соответствовать одному параметру, и чтобы Java на стороне Oracle принимала несколько параметры длинной строки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...