通过jdbctemplate.batchupdate从sql批量插入中获取标识

pgo*_*ngi 5 sql spring spring-jdbc

我想从中插入/更新行ID(PrimaryKey) org.springframework.jdbc.core.JdbcTemplate.batchUpdate

有没有办法像这样使用KeyHolder 来插入/更新行ID.

Yos*_*ner 1

没有,可能是因为 JDBC 规范不需要getGeneratedKeys使用executeBatch(),如此处所述。如果您的驱动程序确实支持它,您将需要使用普通的旧式 JDBC 来访问结果集。代码会是这样的:

PreparedStatement ps = conn.prepareStatement("insert into ... values (?)", Statement.RETURN_GENERATED_KEYS);
ps.setXXX(1, value1);
ps.addBatch();
ps.setXXX(1, value2);
ps.addBatch();
ps.executeUpdate();
ResultSet rs = ps.getGeneratedKeys();
Run Code Online (Sandbox Code Playgroud)