oracle的PreparedStatement.executeBatch为什么返回-2

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/axman/article/details/8951466

PreparedStatement.executeBatch的方法在底层调用了一个void的executeForRows的方法来执行,他们很懒,为了复用这个方法,于是就失去了返回值,也就无法知道当前执行的语句到底返回了什么。

但是jdbc2.0规范规定,如果执行成功但无法知道结果,则返回-2.所以oracle的PreparedStatement.executeBatch把每条语句的返回设为-2.一般在编程中这个返回值可以判断执行成功。但无法知道确切的影响到的行数。

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页