栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

ExecuteBatch方法在Java中返回值-2的数组

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

ExecuteBatch方法在Java中返回值-2的数组

关于批处理更新的返回码,jdbc-spec有以下说法:

■0或更大-命令已成功处理,值是一个更新计数,指示受命令执行影响的数据库中的行数第14章批更新121

■Statement.SUCCESS_NO_INFO-命令已成功处理,但受影响的行数未知

Statement.SUCCESS_NO_INFO被定义为-2,因此您的结果表明一切正常,但是您将无法获得有关更新列数的信息。

oracle文档说明:

•对于准备好的语句批处理,不可能知道该批处理中每个单独的语句在数据库中影响的行数。因此,所有数组元素的值都为-2。根据JDBC
2.0规范,值-2表示操作成功,但是受影响的行数未知。

•对于泛型语句批处理,该数组包含实际更新计数,这些计数指示受每个操作影响的行数。只有在标准批处理的Oracle实现中具有通用语句的情况下,才能提供实际的更新计数。

•对于可调用语句批处理,服务器始终返回值1作为更新计数,而不管受每个操作影响的行数。

这样看来,如果您需要更新计数,则不能使用

PreparedStatement
s,而必须退回到纯
Statement
s。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/438219.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号