DB

[MySQL] 프로시저, 이벤트 스케줄러 만들기

연듀 2023. 10. 6. 17:31
// 테이블 생성
CREATE TABLE users (
    id INT PRIMARY KEY,
    username VARCHAR(50),
    age INT
);

insert into users values
(1, 'name', 20),
(2, 'name2', 21);

select * from users;


// 프로시저 생성

DELIMITER //
CREATE PROCEDURE update_user_age
(
    IN p_id INT,
    IN p_age INT
)
BEGIN
    UPDATE users
    SET age = p_age
    WHERE id = p_id;
END //

DELIMITER ;

// 프로시저 목록 조회
show procedure status;


// 호출 
CALL update_user_age(2, 40);



// 이벤트 생성
CREATE EVENT users_event
	ON SCHEDULE every 1 minute
	STARTS '2023-10-07 00:00:00'
    COMMENT ''
    DO
      call update_user_age(1, 40);

// 이벤트 조회
show events;