-
[삼쾌한 IT강의] 저장프로시저 (스토어드 프로시저) 연습하기2데이터베이스/실습 2022. 7. 23. 16:59
광고광고안녕하세요 삼쾌한 IT강의 백소라강사 입니다.
스토어드 프로시저를 이용해 고객의 등급을 매겨봅시다.
실습을 위한 DB 자료는 아래 링크에서 확인하세요
2019/06/27 - [데이터베이스/실습자료] - [삼쾌한 IT강의] 조인 실습자료!
12345678910111213141516171819202122232425262728293031323334353637383940414243ALTER TABLE userTBL ADD COLUMN grade char(10);DROP PROCEDURE IF EXISTS gradeProc;DELIMITER $$CREATE PROCEDURE gradeProc()BEGINDECLARE id VARCHAR(10);DECLARE sum INT;DECLARE userGrade CHAR(10);DECLARE endOfRow BOOLEAN DEFAULT FALSE;DECLARE userCursor CURSOR FORSELECT U.userid, sum(price*amount)FROM buyTBL BRIGHT OUTER JOIN userTBL UON B.userid = U.useridGROUP BY U.userid, U.userName;DECLARE CONTINUE HANDLERFOR NOT FOUND SET endOfRow = TRUE;OPEN userCursor;grade_loop : LOOPFETCH userCursor INTO id, sum;IF endOfRow THENLEAVE grade_loop;END IF;CASEWHEN (sum>=1500) THEN SET userGrade = 'VVIP';WHEN (sum>=1000) THEN SET userGrade = 'VIP';WHEN (sum>=1) THEN SET userGrade = 'GOLD';ELSE SET userGrade = 'SILVER';END CASE;UPDATE userTBL SET grade = userGrade WHERE userID = id;END LOOP grade_loop;CLOSE userCursor;END $$DELIMITER ;CALL gradeProc();SELECT * FROM userTBL;cs * 테이블에 grade 칼럼을 추가한 후 저장 프로시저를 정의, 호출한 후에 userTBL을 조회하여 회원등급이 제대로 적용됐는지 확인합니다.
gradeProc.txt0.00MB'데이터베이스 > 실습' 카테고리의 다른 글
[삼쾌한 IT강의] MySQL 과 조건문 반복문 (저장 프로시저) (1) 2022.07.23 [삼쾌한 IT강의] 조인 간단 실습 (0) 2022.07.23 [삼쾌한 IT강의] 저장프로시저 (스토어드 프로시저) 연습하기 (0) 2022.07.23 [삼쾌한 IT강의] 자바에서 MySQL 테이블 행 개수 구하기 (0) 2022.07.23 [삼쾌한 IT강의] 자바에서 MySQL DB 변경하기 (0) 2022.07.23