0

テーブルの特定の列から値を取得し、それらを配列に配置する必要があります。PL/SQL ストアド プロシージャを使用してから、Java でプロシージャを呼び出し、次のようなものを使用することを考えています。

    CallableStatement.getArray(2, myArray);

私は次のようなものを使用することを考えていました:

SELECT column1 
INTO myVARRAY
FROM table1
WHERE table_id = t_id;

ストアドプロシージャでしかし、それはうまくいきませんでした

4

1 に答える 1

1

myVARRAYのタイプであると仮定しvarchar2ます。この場合、次のようなものを試すことができます

p_col   VARCHAR2 (32);

SELECT column1 
INTO p_col
FROM table1
WHERE table_id = t_id;

次に、 p_col を配列に追加します

myVARRAY.EXTEND;
myVARRAY (1) := p_col;

RETURN myVARRAY;

そしてJavaからあなたの配列を呼び出す

callablestatement.registerOutParameter(2, OracleTypes.ARRAY, "MYVARRAY");

これがお役に立てば幸いです。それ以外の場合は、関数/手順と発生しているエラーの種類に関する詳細情報を提供してください。

于 2012-11-18T04:58:40.543 に答える