java – 从插入的行jdbc的主键?

有没有跨数据库平台的方式来获取您刚刚插入的记录的主键?

我注意到this answer说,你可以通过调用SELECT LAST_INSERT_ID()获得它,我认为你可以调用SELECT @@ IDENTITY AS’Identity’;有没有一个通用的方法来做这个跨数据库在jdbc?

如果不是你怎么建议我实现这一段代码,可以访问任何SQL Server,MySQL和Oracle?

从我的代码复制:

pInsertOid = connection.prepareStatement(INSERT_OID_SQL, Statement.RETURN_GENERATED_KEYS);

其中pInsertOid是一个预准备语句。

您可以获取密钥:

// fill in the prepared statement and
pInsertOid.executeUpdate();
ResultSet rs = pInsertOid.getGeneratedKeys();
if (rs.next()) {
  int newId = rs.getInt(1);
  oid.setId(newId);
}

希望这给了一个好的起点。

http://stackoverflow.com/questions/201887/primary-key-from-inserted-row-jdbc

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:java – 从插入的行jdbc的主键?