728x90
함수나 프로시저는 여러 sql 문이 조합되어 있다.
그런데 sql문의 종료태그가 기본적으로 ; 이기 때문에
생성시 프로시저나 함수의 전체 구문이 제대로 실행되지 않을 수 있다.
이에 생성 구문 실행시 임시로 종료태그를 변경할 필요가 있다.
아래와 같이 하면 된다.
DELIMITER $$
#CREATE FUNCTION...
#or
#CREATE PROCEDURE...
END $$
DELIMITER ;
보면 알겠지만 생성 구문 실행 전 DELIMITER $$ 를 통해 종료태그를 $$로 변경해서
END $$ 가 구문의 종료로 인식된다.
그리고 DELIMITER ; 를 통해 종료태그를 다시 ; 로 돌려놓는다.
728x90
'Backend > Database' 카테고리의 다른 글
인덱스 스캔과 묵시적 형변환 (0) | 2021.10.20 |
---|---|
스키마와 유저. 그리고 데이터베이스 (0) | 2021.08.19 |
mysql 숫자 타입 정의시 괄호 안에 숫자의 의미 (0) | 2021.07.05 |
mysql object 확인 (0) | 2021.03.19 |
Mysql 유저 생성 및 권한설정 (0) | 2021.03.12 |