스토어드 프로시저 stored procedure : SQL에 프로그래밍 기능을 추가해서 일반 프로그래밍 언어와 비슷한 효과를 낼 수 있음.
DELIMITER $$ -- ①
CREATE PROCEDURE 스토어드_프로시저_이름( IN 또는 OUT 매개변수) -- ②
BEGIN
이 부분에 SQL 프로그래밍 코드를 작성
END $$
DELIMITER; -- ①
① 필수 항목. 스토어드 프로시저를 묶어주는 기능. (##, %%, &&, // 등으로 바꿔도 됨)
② 스토어드 프로시저의 이름을 정해줌.
CREATE FROCEDURE : 스토어드 프로프로시저시저를 만든 것뿐, 아직 행(호출)한 것 아님.
스토어드 프로시저 호출하는 형식
CALL 스토어드_프로시저_이름();
USE market_db; -- ①
DROP PROCEDURE IF EXISTS user_proc; -- ②
DELIMITER $$
CREATE PROCEDURE user_proc() -- ③
BEGIN
SELECT * FROM member; -- ④
END $$
DELIMITER ;
CALL user_proc(); -- ⑤
① 데이터베이스 사용 지정
② 기존에 user_proc라는 이름의 스토어드 프로시저가 있다면 삭제. 없으면 넘어감.
③ 스토어드 프로시저를 만드는 구문
④ 스토어드 프로시저의 내용.
⑤ 생성한 스토어드 포르시저 실행(호출)