我有一个名为Save
的程序的Orcale DB。这就是我运行它的方式:
> EXECUTE DBManager.Save;
现在我想用Hibernate做同样的事情。
public void save() {
Session session = null;
session = this.sessionFactory.getCurrentSession();
Query query = session.createSQLQuery("EXECUTE DBManager.Save;");
int updated = query.executeUpdate();
}
此代码不起作用。
WARN : org.hibernate.util.JDBCExceptionReporter - SQL Error: 900, SQLState: 42000
做什么?
答案 0 :(得分:2)
试试这个例子
Query query = session.createSQLQuery( "CALL GetStocks(:stockCode)") .addEntity(Stock.class) .setParameter("stockCode", "7277");
答案 1 :(得分:1)
对于Oracle,您可以使用
之类的代码CallableStatement cs = null;
cs = this.con.prepareCall("{call DBManager.Save}");
ResultSet rs = cs.executeQuery();