0

ストアド プロシージャを使用して SQL テーブル内に String データを既に格納しているコードがあります。

// 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);
    }
}

ストアド プロシージャでオブジェクトのリストをサポートする方法が不明です。

オブジェクトのリストをストア プロシージャに渡して解析した経験のある人はいますか? 誰かがこれがどのようになるかのサンプルコードを提供できますか?

4

1 に答える 1

1

私は自分のアプリケーションでそのような呼び出しを使用しています (現在ソースへのアクセスはありません) が、 http://asktom.oracle.com/pls/asktom/f?p=100:11:0 ::::P11_QUESTION_ID:712625135727のように見えます

私が覚えている 1 つの問題は、実行時の SQL 例外との戦いでした。これは、ojdbc14 の横に orai18n.jar をクラスパスに追加することで解決されました (Oracle 10g と文字列のリストを渡す場合)。

于 2011-08-09T20:57:33.700 に答える