2011-04-11 1 views
0

전달 된 값을 기반으로 일부 문자열을 반환하는 'calculateValue (value)'라는 내부 함수를 호출해야합니다.ibatis에서 전달되는 데이터보다 함수를 호출하는 방법

<select id="calculateValue" resultClass="java.lang.String" parameterClass="java.lang.String"> 
    SELECT calculateValue(#value#) FROM SYSIBM.SYSDUMMY1 
</select> 

위 쿼리는 아래 오류를 반환합니다.

com.ibatis.common.jdbc.exception.NestedSQLException :
--- mymapsql.xml에서 오류가 발생했습니다.
--- 쿼리를 실행하는 동안 오류가 발생했습니다.
--- SELECT calculateValue (?) FROM SYSIBM.SYSDUMMY1을 점검하십시오.
--- SQL 문을 확인하십시오 (준비 실패).
--- 원인 : java.sql.SQLException : [SQL0418] 매개 변수 표식의 사용이 유효하지 않습니다.

매개 변수로 전달되는 값에 calculateValue() 함수를 호출하는 방법은 무엇입니까?

답변

1

프로 시저 태그 <procedure>을 사용하여 저장 프로 시저를 호출합니다.

<procedure id="procId" resultClass="ResultClass" 
      parameterMap="getMap"> 
{ call getResult(#param#) } 
</procedure> 
0

나는 select tag를 사용하여 'calculateValue()'저장 프로 시저를 호출하는 데 처음으로 잘못되었습니다. 이제이 프로 시저 태그를 사용하여