关于如何读取分配给新创建的记录的自动递增标识字段的任何建议java.sql.Statement.executeUpdate?
我知道如何在SQL中为几个数据库平台执行此操作,但想知道存在哪些数据库独立接口java.sql,以及人们在跨数据库平台上使用此体验的任何输入.
Dan*_*wak 24
以下snibblet代码应该做ya':
PreparedStatement stmt = conn.prepareStatement(sql,
Statement.RETURN_GENERATED_KEYS);
// ...
ResultSet res = stmt.getGeneratedKeys();
while (res.next())
System.out.println("Generated key: " + res.getInt(1));
Run Code Online (Sandbox Code Playgroud)
已知这适用于以下数据库
对于不起作用的数据库(HSQLDB,Oracle,PostgreSQL等),您需要使用特定于数据库的技巧.例如,在PostgreSQL上,您可以调用SELECT NEXTVAL(...)相关序列.
请注意,参数executeUpdate(...)类似.