2014년 1월 9일 목요일

JDBC에서 프로시져나 함수를 호출시 에러 처리 방법[재직자무료교육/프로그래머교육/구로디지털IT교육,오라클/자바/닷넷/C#/iOS/안드로이드/아이폰교육]

JDBC에서 프로시져나 함수를 호출시 에러 처리 방법[재직자무료교육/프로그래머교육/구로디지털IT교육,오라클/자바/닷넷/C#/iOS/안드로이드/아이폰교육]

JDBC를 이용하여 오라클 프로시져나 함수를 호출시 에러 처리 방법



아래 코드 처럼 cstmt.registerOutParameter(i, Types.VARCHAR);
를 이용하여 오류가 있는지 없는지 체크하면 되구요...



     


            cstmt = con.prepareCall("BEGIN ? := DELETE_XXX(?, ?); END;");
            cstmt.registerOutParameter(i++, OracleTypes.CURSOR);
            cstmt.setString(i++, form.getParam("airline_cd"));
            cstmt.registerOutParameter(i, Types.VARCHAR);
            cstmt.execute();
           
            outmsg = cstmt.getString(i);

            if(outmsg != null)
                System.out.print("############# Error Msg dao.cart.CartDAO.setIndoOK[PKG_EM_SALE_INFO.SELECT_SALE_INFO] : " + outmsg);





PL/SQL에서는 다음처럼 에러를 out parameter에 넣으면 되죠.



 PROCEDURE DELETE_XXX(
  P_XXX_CD    IN    SALE_INFO.XXX_CD%TYPE,
  P_OUTMSG  OUT    VARCHAR2
 )IS
 
 BEGIN
  DELETE
    FROM
    SALE_INFO
    WHERE
        XXX_CD = P_XXX_CD;
 
  COMMIT;
 
 EXCEPTION
  WHEN OTHERS THEN
  P_OUTMSG := SQLERRM;
  ROLLBACK;

 END;
            



댓글 없음:

댓글 쓰기