代码之家  ›  专栏  ›  技术社区  ›  Rohit Banga

分配给自动增量主键的SQL JAVA获取值[复制]

  •  4
  • Rohit Banga  · 技术社区  · 16 年前

    这个问题已经有了答案:

    我的表中有一个主键自动递增属性。我想知道为使用statement.executeUpdate()插入的行分配给它的值。如何以最佳方式实现这一目标?

    1 回复  |  直到 16 年前
        1
  •  11
  •   Pascal Thivent    16 年前

    使用 Statement#getGeneratedKeys() Statement#executeUpdate(String, int) (这是JDBC3.0特性,您的数据库必须支持JDBC3.0)。

    下面是一个返回 ResultSet 表1中自动生成列的值:

    Statement stmt = conn.createStatement();
    int rows = stmt.executeUpdate("INSERT INTO TABLE1 (C11, C12) VALUES (1,1)", Statement.RETURN_GENERATED_KEYS);
    ResultSet rs = stmt.getGeneratedKeys();