これは、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は、ここ 。