У меня есть хранимая процедура в SQL Server, как показано ниже
CREATE OR REPLACE PROCEDURE studentById(id in number)
AS
BEGIN
select fname||' '||lname,dept into sname,dept from student where sid=id;
END;
в коде Java. Я вызываю хранимую процедуру, как показано ниже
StoredProcedureQuery storedProcedure = entitymanager.createStoredProcedureQuery("studentById");
storedProcedure.registerStoredProcedureParameter("id", Integer.class, ParameterMode.IN);
storedProcedure.registerStoredProcedureParameter("sname", String.class, ParameterMode.OUT);
storedProcedure.registerStoredProcedureParameter("dept", String.class, ParameterMode.OUT);
storedProcedure.setParameter("id", id);
storedProcedure.execute();
String name = storedProcedure.getOutputParameterValue("sname").toString();
String dept = storedProcedure.getOutputParameterValue("dept").toString();
Я не могу получить нинабор результатов или данные, использующие параметр out, я не могу изменить хранимую процедуру, поскольку у меня нет доступа к БД.