2014-03-26 4 views
1

내가는 저장 프로 시저를 실행하고

CREATE PROC add_them 
    @param1 int, 
    @param2 int, 
    @result int OUTPUT 
AS 
BEGIN 
    SET @result = @param1 + @param2; 
END 

내가 최대 절전 모드에서이 프로 시저를 호출 할 수 합계를 2 개 INT 인수를 취하고 반환하는 간단한 MS SQL 서버 절차가 있다고 가정 (버전 4.3 최대 절전 모드에서 단일 매개 변수를 얻을 수 .1)?

지금까지 내가 나중에 PARAMS을 설정하고 query.list() 그것을 실행하는 session.createSQLQuery("exec add_them :param1, :param2") 접근 ..

을 사용하지만 절차가 집합을 반환하지 않기 때문에이 작동하지 않습니다,하지만 밖으로 단일 값을 .

그래서이 절차를 호출 할 수 있습니까?

답변

0

Query addItemQuery=session.createSQLQuery("exec add_them :param1, :param2"); 
addItemQuery.setInteger("param1", 1); 
addItemQuery.setInteger("param2", 2); 
objArrList=addItemQuery.list(); 
+0

이 나는'SQL 오류 얻을 .. 나는 이미 시도하는 기술 것을 본질적 : 0, SQLState의를 : 24000을 executeQuery 메서드는 결과 집합을 반환해야합니다. org.hibernate.exception.GenericJDBCException : ResultSet' 오류를 추출 할 수 없습니다. –

0

으로 시도하거나 당신이 시도 할 수 :

Query addItemQuery=session.createSQLQuery("exec add_them :param1, :param2"); 
.SetParameter("param1", param1) 
.SetParameter("param2", 2); 
.list<int>(); 
관련 문제