Data Science

SQL(MariaDB) - DELIMITER(델리미터) 개념

개발하길잘햇다 2020. 9. 23. 19:39
반응형

 

SQL에서 procedure의 과정을 배우는 중 DELIMITER $$ 의 사용 이유와 용도에 대해서 잘 이해되지 않아 알아보았다.

 

 


- DELIMITER

DELIMITER쉽게 말하자면 구문의 끝을 임의로 설정해주는 기능의 쿼리라고 볼 수 있다.

 

일반적으로 DELIMITER $$, DELIMITER ; DELIMITER (기타등등) 으로 사용된다.

 

 


 

DELIMITER $$

 

 

위 예제를 보면서 정리해보자

 

기본적으로 모든 문장의 끝은  ;  으로 마친다.

 

 

 ;  를 기점으로 더이상 해당 문장에서의 입력은 끝마친다 라는 뜻인데,

 

 

위 예제에서 delimiter $$임의로 문장 입력의 끝을 $$ 으로 설정하고 입력을 시작하겠다 라는 말이다.

 

 

그래서 문장 끝에 $$ 을 입력하지 않는한 해당 문장은 입력이 종료되지 않으며 출력을 할 수 없다.

( ; 를 쓰지 않으면 입력이 끝나지 않는것과 같은맥락)

 

 

 

 

 

예제를 해석해보면 

 

예제 설명

 

처음의 끝을 $$ 로 지정해주는 이유는 procedure 쿼리 생성 과정중에  ;  로 끝나는 문장들이 있는데 이문장들이 

거기서 종료되지 않고 쭉 이어갈 수 있도록 하기 위한 일종의 사전작업으로 이해 할 수 도 있겠다.

 

 

마지막 delimiter ; 를 지정해주는 이유는 다시 이전처럼 ; 로 입력을 진행하기 위해서이다.

 

 

반응형