在Spring 3PostgreSQL 8.4.9中从行插入获取自动生成的密钥

在Spring 3PostgreSQL 8.4.9中从行插入获取自动生成的密钥,第1张

在Spring 3 / PostgreSQL 8.4.9中从行插入获取自动生成的密钥
KeyHolder holder = new GeneratedKeyHolder();getJdbcTemplate().update(new PreparedStatementCreator() {     @Override     public PreparedStatement createPreparedStatement(Connection connection)  throws SQLException {         PreparedStatement ps = connection.prepareStatement(sql.toString(),  Statement.RETURN_GENERATED_KEYS);          ps.setString(1, person.getUsername());         ps.setString(2, person.getPassword());         ps.setString(3, person.getEmail());         ps.setLong(4, person.getRole().getId());         return ps;     } }, holder);Long newPersonId = holder.getKey().longValue();

请注意,在较新版本的Postgres中,你需要使用

connection.prepareStatement(sql.toString(),     new String[] { "idcompte"  })

代替

connection.prepareStatement(sql.toString(),     Statement.RETURN_GENERATED_KEYS);


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5100909.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-17
下一篇 2022-11-17

发表评论

登录后才能评论

评论列表(0条)

保存