Как передать List <> хранимой процедуре Oracle - PullRequest
0 голосов
/ 10 августа 2011

У меня есть код, который уже хранит данные String внутри таблицы SQL с помощью хранимой процедуры:

// my DAO
public class SomeProcedure extends StoredProcedure {
    public void process (String data) {
        Map<String, Object> map = new HashMap<String, Object>();
        hm.put("customData", data);
        Map<?,?> result = super.execute(hm);
    }
}

// My pks
procedure storeData (
    data_p in someTable.data%type,
    data_o out someTable.data%type,
)
as
begin
    insert into someTable
...
end storeData;

Мне нужно изменить ее, чтобы включить список объектов.Например:

// my DAO
public class SomeProcedure extends StoredProcedure {
    public void process (String data, List<someObject> list) {
        Map<String, Object> map = new HashMap<String, Object>();
        hm.put("customData", data);
        hm.put("customList", list);
        Map<?,?> result = super.execute(hm);
    }
}

Мне неясно, как поддерживать Список объектов в хранимой процедуре.

Есть ли у кого-нибудь опыт передачи и анализа списков объектов для хранения процедур?Кто-нибудь может предоставить пример кода того, как это будет выглядеть?

1 Ответ

1 голос
/ 10 августа 2011

Я использую такой вызов в своем приложении (сейчас нет доступа к источникам), но он выглядит так: http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:712625135727

Одна проблема, которую я помню, это борьба, это исключение SQL во время выполнения, решаемое путем добавления orai18n.jar для classpath рядом с ojdbc14 (для оракула 10g и передачи списка строк)

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