问题描述
我可以使用Spring的JdbcTemplate
来获取刚刚插入的行的列值吗?
例如sql看起来像这样:
insert into table1 (name,age) values ('name',20) returning name;
我想获取name
列的值。
update()
方法仅返回插入的行数。
解决方法
如果您使用JdbcTemplate.queryForObject()
并且sql使用with ... as
构造,则似乎可以插入行:
String sql="with result as (\n" +
"insert into table1 (name,age) values ('name',20) returning name\n" +
")\n" +
"select name from result;";
String name = jdbcTemplate.queryForObject(sql,String.class);