Ну, у меня есть PL/SQL функции со следующей структурой:Как я могу назвать эту функцию в спящем режиме?
function Proc(SessionID SomeConst.TSessionID default null) return sys_refcursor is
rc sys_refcursor
у меня нет никакого опыта работы с PL/SQL, но теперь я должен назвать это каким-то образом. Я знаю, что такого рода процедуры:
procedure LogOn(UserName in varchar2, Password in varchar2, SessionID out varchar2)
должен называться так:
CallableStatement callableStatement = sessionFactory
.getCurrentSession().connection()
.prepareCall("call PREQUEST.LOGON(?,?,?)");
callableStatement.setString(1, userName);
callableStatement.setString(2, password);
callableStatement.registerOutParameter(3, OracleTypes.VARCHAR);
callableStatement.execute();
return callableStatement.getString(3);
Proc
Но не out
параметр. Что?
UPD:
System.out.println(sessionFactory
.getCurrentSession()
.createSQLQuery(
"select Proc(:sessionId) from dual")
.setString("sessionId", sessionId).list().size());
Я попытался это, но консоль говорит:
org.hibernate.MappingException: Нет Диалект отображение для типа JDBC: -10
MappedBean должен быть объектом спящего режима? – Tony
Да спящий объект. –
Я добавил некоторые подробности. Посмотрите Pls. – Tony