본문 바로가기
프로젝트

스토어드 프로시저로 환불여부 체크 구현하기

by do_ng 2020. 12. 23.

PLAN A : 마이페이지의 주문내역 조회 페이지로 이동하기 전 환불 여부 체크 프로시저를 호출하기 

PLAN B : 환불 여부 체크를 하는 스케줄러를 만들어 10초에 1번씩 환불 여부 체크하기 

-> PLAN B는 스케줄러가 계속해서 작동을 해야 하므로 서버의 성능이 저하가 될 수 있다고 판단해 PLAN A로 결정함 

관리자의 환불내역 페이지 또는 회원의 주문내역 조회 페이지로 이동하지 않는 이상은 환불 여부 체크 프로시저의 실행이 없단 건데 환불 여부만 회원에게 알려줄 것이기 때문에 문제 될 것이 없다고 판단함

 

현재시각이 환불가능한 주문날짜를 지나면 환불이 불가능함(환불여부가 Y -> N 바뀜) 

 

커서의 개념)

- 해당 테이블에서 모든 행을 가져온뒤에 한 행씩 처리를 할 수 있음 

 

커서 처리 순서)

1.커서 선언하기 (DECLARE '커서 이름' CURSOR FOR) 

2. 커서 OPEN ( OPEN '커서 이름')

3. 커서에서 첫 행의 데이터를 가져와서 읽음 -> 조건에 따라서 알맞게 처리 

4. 더 이상 읽을 데이터가 없으면 커서를 닫음