1
レコード型とPL/SQLパッケージで定義されたプロシージャ(INパラメータとしてレコードの表を受け取ります) Javaコード内でこのプロシージャをコールするにはどうすればよいですか?Java呼び出しPL/SQLプロシージャでレコード表を使用
このタイプのINパラメータを避ける方が良いでしょうか? REF CURSOR?
レコード型とPL/SQLパッケージで定義されたプロシージャ(INパラメータとしてレコードの表を受け取ります) Javaコード内でこのプロシージャをコールするにはどうすればよいですか?Java呼び出しPL/SQLプロシージャでレコード表を使用
このタイプのINパラメータを避ける方が良いでしょうか? REF CURSOR?
通常のテーブルは一時テーブルを使用しています。
0 nessesary場合はオフに自動コミットを設定し(これはデフォルトではオフです)
1いくつかの値whith一時テーブルを埋めます。
2プロシージャを呼び出します。テンポラリテーブルから値を読み込みます。 (INパラメータにレコード)
3は
//A function to put a value in temporary table
public void addValueToTmp(Connection conn, String value) throws NamingException, SQLException {
CallableStatement cs = conn.prepareCall("{call plsql_function_put_value_in_tmp(?)}");
....... other code .......
....... other code .......
....... other code .......
}
//A function to do something whit a data in temporary table
public void doAllWork(Connection conn) throws NamingException, SQLException {
CallableStatement cs = conn.prepareCall("{call plsql_function_do_something_whith_tmp}");
....... other code .......
....... other code .......
....... other code .......
}
public void mainFunction() throws NamingException, SQLException {
....... other code .......
//Get connection
Connection conn = anyFunctionToGetConnection();
//Fill temporary table
addValueToTmp(conn, value1);
addValueToTmp(conn, value2);
addValueToTmp(conn, value3);
//Do something whith data
doAllWork(conn);
//Commit
conn.commit;
....... other code .......
}
をコミットしていない私はそれを得た...しかし、それは少し時間がかかりますです。 – Samson
私はCLOBを使用してXMLを解析する必要があります。(あなたはそれについてどう思いますか? – Samson