実行されるステートメントは実際には DML ではないため (例:UPDATE
、 INSERT
または EXECUTE
)、ただし 含む T-SQL の一部 DML、更新クエリとして扱われていないと思われます。
JDBC 4.1 仕様のセクション 13.1.2.3 には、次のように記載されています (解釈がかなり難しい):
この情報を考えると、 executeUpdate()
だと思います 内部的に execute()
を実行します 、そして - execute()
として false
を返します - getUpdateCount()
の値を返します 、この場合 - JDBC 仕様に従って - -1
を返します .
これは、1) Statement.executeUpdate()
言います:
そして 2) Statement.getUpdateCount() 指定:
明確にするために:executeUpdate()
のJavadocを考える この動作はおそらく間違っていますが、説明できます。
また、私が他の場所でコメントしたように、-1 は単に何かが変更された可能性があることを示している可能性があります。実行される SQL)。