sql >> データベース >  >> RDS >> Oracle

ArrayIndexOutOfBoundsExceptionなしでexecuteBatchによって生成されたキーを取得するにはどうすればよいですか?

    これは、Windows上のOracle、ドライバJAR ojdbc6.jar、または(Oracleを知っている)両方のバグのようです。

    提示したコードに重大な問題はありません。実行すると、毎回挿入される行数が-2(= Statement.SUCCESS_NO_INFO )、したがって、これらの数値を無視したほうがよい場合があります。

    Linux上のOracle11gXE11.2.0.2.0と4つのバージョンのOracleJDBCドライバーJARを使用すると、コードは正常に実行されます。ただし、同じバージョンのOracleXEとojdbc6.jarを使用してWindows10で実行すると、発生しているのと同じArrayIndexOutOfBoundsExceptionで失敗します。 ojdbc6.jarの代わりにojdbc7.jarを使用すると、問題は解決します。

    したがって、ojdbc6.jarをojdbc7.jarに置き換えることをお勧めします。ojdbc7.jarは、ここ




    1. codeigniterで自動ログアウトを防ぐ方法は?

    2. UPDATEステートメントがREFERENCE制約と競合していました-SQLServer/TSQLチュートリアルパート76

    3. 複数のテーブルの同じ外部キー

    4. 副選択クエリのHQL制限