当前位置: 首页 > 知识库问答 >
问题:

验证spring JDBC批更新成功

常翰
2023-03-14

我正在使用Spring JDBCTemplate batchUpdate在批中插入数据。我想验证数据是否已成功插入。JDBCTemplate batchUpdate返回一个int[][],那么验证数据是否插入的正确方法是什么?

此链接表示“所有批处理更新方法都返回一个int数组,其中包含每个批处理条目的受影响行数。此计数由JDBC驱动程序报告,并且在这种情况下它并不总是可用,在这种情况下JDBC驱动程序只是返回-2值”。我无法理解在这里返回-2值的意义。这是否意味着插入不成功?

共有1个答案

那鹏
2023-03-14

-2不一定意味着错误,正如前面提到的,受影响行的计数情况不可用。

编辑

-2是语句的值。SUCCESS\u NO\u INFO(而EXECUTE\u FAILED为-3)。因此,除非驱动程序不符合JDBC规范,-2明确表示成功

编辑结束

通过BatchUpdateException报告错误

通常,如果在批处理脚本中运行N个查询,则会在结果中获得每个查询i的更新计数:

int result[] = jdbcTemplate.batchUpdate(sql);

所以:

result[0]

将保留第一个查询的更新计数,

result[1]

将保留第二次查询的更新计数等。

 类似资料:
  • 我在构建过程中使用org.jooq.util.DefaultGenerator来生成jOOQ类来表示我的数据库模式。 当应用程序运行时,模式可能会在应用程序不知道的情况下更改。此类更改可能与已生成的代码兼容,也可能与已生成的代码不兼容。 如何在运行时检测生成的代码是否对特定模式仍然有效? 我正在寻找类似于布尔值stillValid=new SchemaValidator(存在的GeneratedC

  • 但是,当我执行以下测试时,不会引发验证异常: 当保存一个已经持久化的对象时,我如何使验证器触发器?最好是通过Java配置。 我的验证依赖项:

  • 在第一次测试运行期间,如果我使用或而不是,则会发生以下错误(请参阅错误消息)。使用时,应用程序启动并工作时只会出现一个错误:“error o.h.e.j.e.i.jdbconvironmentimpl-无法从数据库java.sql.SQLException:数值溢出” 如果你能帮助我,我将非常高兴。不幸的是,以前的论坛报名没有成功。 应用程序 Oracle设置 HikariCP设置 登录中 JPA

  • 嗨,伙计们,我正在尝试在我的应用程序中进行自动登录,但在登录完成之前,我想知道用户是否验证了他的电子邮件或否。 问题是:即使我验证了我的帐户,代码也看不到这个并说是假的。 这是我的密码。 这条线总是假的,即使我验证了我的帐户。

  • 问题内容: 我在构建过程中使用来生成jOOQ类来表示我的数据库模式。 当应用程序运行时,架构可能会在应用程序不知道的情况下发生更改。这样的更改可能与已经生成的代码兼容,也可能与之不兼容。 如何在运行时中检测生成的代码是否仍然在特定模式下有效? 我正在寻找类似的东西 问题答案: 使用org.jooq.Meta的jOOQ 3.0解决方案 在即将到来的jOOQ 3.0中,可以通过新对象(通过功能请求#1

  • 一、简介 方便用户在设置URL规则时更新url,无需手动去更新各页面URL。只需选择就能批量更新URL即可。 二、功能演示 1.批量更新URL 1、仅当内容页URL规则发上变化时,请批量更新,地址未改变时,不需要更新 。 2、规则设置:设置 > 相关设置 > 管理栏目 > 添加或修改栏目 选择需要更新的模型和栏目,输入每轮更新的信息数目提交则完成批量更新URL操作。如下图所示: