데이터베이스/MYSQL

MySQL DELIMITER 사용법: 초보자도 쉽게 배우는 BEGIN과 트랜잭션

CodeCaine Explorer 2024. 12. 19. 16:48
728x90
반응형
SMALL

안녕하세요! 😊 MySQL에서 DELIMITER를 사용해 트랜잭션이나 저장 프로시저 같은 복잡한 SQL 작업을 처리하는 방법을 배워볼 거예요. 걱정하지 마세요, 정말 쉽답니다! 🐥


🌟 DELIMITER란?

MySQL에서 명령어는 보통 ;(세미콜론)으로 끝나요. 하지만, 저장 프로시저나 트리거를 작성할 때는 명령어 내부에 세미콜론이 여러 번 나올 수 있죠. 이럴 때 DELIMITER를 사용해서 SQL 명령어의 종료 문자를 변경할 수 있어요.


🛠️ DELIMITER와 BEGIN 사용법

예제를 통해 단계별로 배워볼까요? 😄

1️⃣ 기본 사용법: DELIMITER 변경

DELIMITER //

위 코드는 명령어의 종료 문자를 //로 변경하는 거예요. 기본 값인 ; 대신 //로 명령어가 끝났다고 인식하게 돼요.


2️⃣ 트랜잭션 시작하기: BEGIN

BEGINCOMMIT은 데이터 변경을 한 번에 처리하는 트랜잭션을 시작하고 종료하는 명령어예요.

DELIMITER //

BEGIN
    INSERT INTO employees (name, position) VALUES ('Alice', 'Developer');
    INSERT INTO employees (name, position) VALUES ('Bob', 'Designer');
COMMIT;
//

3️⃣ DELIMITER 원래대로 돌리기

작업이 끝나면, 원래의 ;로 돌려야 해요!

DELIMITER ;

🧑‍💻 전체 예제

아래는 DELIMITER를 사용해서 저장 프로시저를 만드는 예제예요:

DELIMITER //

CREATE PROCEDURE AddEmployee (
    IN employeeName VARCHAR(50),
    IN employeePosition VARCHAR(50)
)
BEGIN
    INSERT INTO employees (name, position) 
    VALUES (employeeName, employeePosition);
END;
//

DELIMITER ;

이제 CALL AddEmployee('Charlie', 'Manager');로 프로시저를 실행할 수 있어요!


🐾 포기하지 마세요!

처음에는 조금 복잡해 보일 수 있지만, 연습하다 보면 금방 익숙해질 거예요. 😊
실수를 두려워하지 말고, 실험해 보세요! 🌱

반응형
SMALL