我是春天工作的新手,现在我得到了一个查询但不知道如何使用jdbcTemplate来处理它,查询如下:
UPDATE表设置Seq = @seq:= Seq + 1 WHERE id =?; SELECT @seq为total;
我尝试使用jdbcTemplate.executeQuery但它会显示错误: 无法使用executeQuery()发出数据操作语句。
我尝试使用jdbcTemplate.executeUpdate,但似乎只返回受影响的行
有没有人知道如何实现此查询并返回更新后的值?
答案 0 :(得分:0)
您应该能够首先使用update执行UPDATE
语句,然后使用queryForObject执行SELECT
语句。该变量在绑定到同一连接的会话中保持不变。
jdbcTemplate.update("UPDATE table set Seq = @seq := Seq + 1 WHERE id= ?", yourId);
int total = jdbcTemplate.queryForObject("SELECT @seq as total", Integer.class);