0
我在我的项目中使用Hibernate和存在一定的情况下,我想用uniqueResult()在org.hibernate.SQLQuery方法类执行本机SQL INSERT和UPDATE操作。使用SQLQuery.uniqueResult()来执行本地SQL INSERT和UPDATE
我曾尝试在同一个类上使用executeUpdate()方法。但是我收到一个错误,说他们只用于HQL更新。
如果这是确保数据在数据库中被保存/更新的有效且可靠的方式,请咨询。
谢谢帕斯卡。但是,session.connection()会在当前Hibernate Session的事务边界内工作吗? 其实我想为某些插入和更新执行本机SQL,并且出于性能原因需要使用原始SQL执行此操作。除此之外,我正在处理一个数据库,这个数据库的模式并没有在实体上进行设计/优化,所以我很难让Hibernate和它一起工作。 我正在做一些插入使用uniqueResults(),它适用于大多数地方,但在某些情况下无法插入数据。因此我想要用老派的JDBC方式来做到这一点。 – oddjobsman 2010-05-24 18:29:32
@RananathKini:'session.connection()'返回底层的JDBC连接,因此,它可以在当前事务的边界内工作。 – 2010-05-24 19:04:08