[MySQL] 이벤트 스케쥴러와 프로시저 (매일 특정 시간에 CRUD 작업 실행)
MySQL에 주기적으로 특정시간에 DB에 어떤 작업을 해주어야 할 상황이 생길 때가 있다. 나는 이번에 쇼핑몰 프로젝트를 진행하면서 "장바구니에 담긴 상품은 최대 15일까지 보관되며 자동으로 삭제됩니다." 라는 장바구니의 정책이 있어서 이를 MySQL의 이벤트 스케쥴러와 프로시저를 활용하여 매일 자정에 15일이 지난 상품을 장바구니 테이블에서 삭제하도록 만들었다. 프로시저(Procedure) 프로시저는 MySQL의 함수(메서드)를 만드는 것이라고 보면 된다. 실행할 쿼리문을 함수로 빼서 재사용가능하고, 이 프로시저의 쿼리에 조건문이나 반복문도 함께 사용할수가 있다. 프로시저 생성 나같은 경우에는 현재날짜와 cart 테이블에 데이터가 생성된 시점을 비교해 15일이 지났으면 삭제하는 간단한 프로시저를 만들었..