【问题标题】:How to check if cursor is in insert row of ResultSet?如何检查光标是否在ResultSet的插入行中?
【发布时间】:2014-06-03 18:57:00
【问题描述】:

我有一个java.sql.ResultSet 对象,我需要将其数据保存到数据库中。游标可以位于插入行(已调用moveToInsertRow())或现有数据库行。在第一种情况下,我需要拨打insertRow(),在后一种情况下,我需要拨打updateRow()。我怎么知道该打电话给哪一个?

当然我可以在调用moveToInsertRow() 时设置一个标志,但我认为会有isInsertRow() 或类似的东西?我试过rowInserted(),但MySQL不支持它,无论如何我认为它只有在isInsertRow()被调用后才能工作。

【问题讨论】:

    标签: java mysql jdbc resultset


    【解决方案1】:

    getRow() 如果没有当前行,则返回 0。这似乎对我有用。

    编辑:如果该行已被删除,它也会返回 0,因此不是一个完美的解决方案。当我打电话给deleteRow() 之后,我会打电话给close()。然后我可以使用isClosed() 检查它是否被删除。 MySQL JDBC 不支持rowDeleted()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-19
      • 2019-05-05
      • 1970-01-01
      • 2012-02-04
      • 2011-09-03
      相关资源
      最近更新 更多