게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
오라클 프로시저 어떻게 만드나요?
게시물ID : programmer_21783짧은주소 복사하기
작성자 : EmiyaMulzom
추천 : 0
조회수 : 1269회
댓글수 : 1개
등록시간 : 2017/11/29 17:03:03

LoginUserController.java

Map<String, String> paramMap = new HashMap<String, String>();   //서비스단에 전달한 parameter를 담는 Map객체 paramMap.put("empCode", StringUtil.nvl(request.getParameter("empCode"),"empCode"));    //유저가 입력한 사원 코드 paramMap.put("password", password);
LoginUserVO loginUserVO = loginUserService.getLogin(paramMap); 

 

--------------------------------------------------------------------------

Service, DAO 기본 파라미터 값 전달 동일하구요.

 

마이바티스에서 프로시저 호출하고 싶은데 잘 안됩니다. 일단 제가 mapper xml에 작성한 파일은 맵퍼는

 

<resultMap type="hashmap" id="getLoginXML"></resultMap> <select id="getLogin" statementType="CALLABLE" parameterType="hashmap">     { call SALE.SP_X_MEMBER_GETLOGIN(     #{empCode}, #{password}, #{retList, mode=OUT, jdbcType=CURSOR, javaType=ResultSet, resultMap=getLoginXML} )     }  </select>

 

-----------------------------------------------------------------------------

 

오라클 프로시저에서 만든 것은 

 

CREATE OR REPLACE PROCEDURE      SP_X_MEMBER_GETLOGIN
(
    sp_empCode IN VARCHAR2,
    sp_password IN VARCHAR2,

     out_RESULT           OUT sys_refcursor,
     O_readboard OUT SALE0003%ROWTYPE,
     
    out_CODE    OUT NUMBER,
    out_MSG     OUT VARCHAR2
)
IS 

BEGIN 

    OPEN out_RESULT FOR
         SELECT CUST_ID AS EMP_CODE, CUST_NM AS EMP_NAME, '' AS DEPT_CODE,'1' EMP_GB, PASSWORD, USE_YN 
         INTO O_readboard 
        FROM SALE.SALE0003 
        WHERE CUST_ID LIKE '11%' AND CUST_ID = sp_empCode AND PASSWORD = UTL_I18N.STRING_TO_RAW(sp_password,'AL32UTF8');
    
    

    out_CODE := 0;
    out_MSG := '데이터 확인';
    
EXCEPTION
    WHEN OTHERS THEN
        out_CODE := SQLCODE;
        out_MSG  :=(TO_CHAR(SQLCODE) ||'-'|| SQLERRM);      

END ;

 

-----------------------------------------------------------------------------

 

 Cause: java.sql.SQLException: ORA-06550: 줄 1, 열7:PLS-00306: 'SP_X_MEMBER_GETLOGIN' 호출 시 인수의 갯수나 유형이 잘못되었습니다
ORA-06550: 줄 1, 열7:PL/SQL: Statement ignored

 

오류가 나옵니다.

 

기본 프로시저의 개념도 없는지라 부탁드립니다. ㅠ_ㅠ

 

전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호