Мой вопрос очень похож на Получение возвращаемого значения функции PL / SQL через Hibernate
У меня есть функция, которая выполняет некоторые внутренние изменения и возвращает значение.
Первоначальной идеей было сделать что-то вроде этого:
protected Integer checkXXX(Long id, Long transId)
throws Exception {
final String sql = "SELECT MYSCHEMA.MYFUNC(" + id + ", "
+ transId + ") FROM DUAL";
final BigDecimal nr = (BigDecimal) this.getHibernateTemplate()
.getSessionFactory().getCurrentSession().createSQLQuery(sql)
.uniqueResult();
return nr.intValue();
}
К сожалению, это не работает с Oracle. Каков рекомендуемый способ сделать что-то подобное?
Есть ли способ извлечь объявленные переменные из моего утверждения?