我用以下 sql 语句编写了一个存储过程
- 在表 a 中插入一行
- 更新表 b 中的一行
- 在错误表中插入一行
- 选择查询列出错误表中的记录数
我可以使用 query.list() 吗?它会正确执行所有插入、更新和返回列表吗?
我认为我们不能使用 query.executeUpdate() 因为它只返回在最后一个 sql 语句中更新或插入的行数。
提前致谢, 凯瑟尔
我用以下 sql 语句编写了一个存储过程
我可以使用 query.list() 吗?它会正确执行所有插入、更新和返回列表吗?
我认为我们不能使用 query.executeUpdate() 因为它只返回在最后一个 sql 语句中更新或插入的行数。
提前致谢, 凯瑟尔
如果它是存储过程,您可以像这样使用
try
{
con = connectionPool.getConnection();
proc = con.prepareCall("{ call set_death_age(?, ?) }");
proc.setString(1, dyingBard.getName());
proc.setInt(2, age);
proc.execute();
}
catch (SQLException e) {}
http://www.mkyong.com/hibernate/how-to-call-store-procedure-in-hibernate/
有关如何使用休眠调用存储过程的示例,请参见上面的链接
如果你使用的是 spring,你也可以通过 Spring JdbcTemplate 调用存储过程。