데이터베이스 관리를 효율적으로 하기 위해 MySQL에서 프로시저를 사용하는 방법을 소개합니다. 이 포스팅에서는 프로시저가 무엇인지, 프로시저를 작성하는 방법, 그리고 예제 프로시저를 실행하는 방법에 대해 설명합니다.
프로시저란 무엇인가요?
프로시저(Procedure)는 데이터베이스 내에서 저장되고 실행될 수 있는 일련의 SQL 문장 집합입니다. 프로시저는 반복되는 작업을 자동화하거나, 복잡한 데이터 처리 로직을 데이터베이스 내에서 직접 수행할 수 있게 합니다. 이를 통해 애플리케이션의 코드 간소화, 성능 향상, 데이터 일관성 유지 등의 이점을 얻을 수 있습니다.
MySQL에서 프로시저 작성 방법
MySQL에서 프로시저를 작성하려면 다음과 같은 문법을 사용합니다:
CREATE PROCEDURE 프로시저명 (파라미터1 데이터타입, 파라미터2 데이터타입, ...)
BEGIN
-- SQL 문장들
END;
예제 프로시저 작성 및 실행
다음은 employees 테이블에서 특정 부서(department)에 속한 직원들의 정보를 가져오는 예제 프로시저를 작성하고 실행하는 방법입니다.
1. 예제 테이블 생성
우선, employees 테이블을 생성하고 샘플 데이터를 삽입합니다.
CREATE TABLE employees (
emp_id INT PRIMARY KEY,
emp_name VARCHAR(50),
department VARCHAR(50)
);
INSERT INTO employees (emp_id, emp_name, department) VALUES
(1, 'Alice', 'HR'),
(2, 'Bob', 'Engineering'),
(3, 'Charlie', 'HR'),
(4, 'David', 'Engineering'),
(5, 'Eve', 'Marketing');
2. 프로시저 작성
다음은 get_employees_by_department이라는 프로시저를 작성하여 특정 부서에 속한 직원들을 조회하는 예제입니다.
DELIMITER //
CREATE PROCEDURE get_employees_by_department(IN dept_name VARCHAR(50))
BEGIN
SELECT emp_id, emp_name
FROM employees
WHERE department = dept_name;
END //
DELIMITER ;
위 프로시저는 dept_name이라는 입력 파라미터를 받아서 해당 부서의 직원 정보를 조회합니다.
3. 프로시저 실행
작성한 프로시저를 실행하여 결과를 확인해봅니다.
CALL get_employees_by_department('HR');
위 명령을 실행하면 HR 부서에 속한 직원들의 정보가 출력됩니다.
+--------+----------+
| emp_id | emp_name |
+--------+----------+
| 1 | Alice |
| 3 | Charlie |
+--------+----------+
결론
프로시저는 반복적인 작업을 자동화하고 복잡한 데이터 처리를 효율적으로 수행할 수 있게 해주는 강력한 도구입니다. MySQL에서 프로시저를 작성하고 실행하는 방법을 이해하면 데이터베이스 관리 작업을 더욱 효율적으로 수행할 수 있습니다. 이 포스팅이 MySQL 프로시저를 이해하고 활용하는 데 도움이 되길 바랍니다.
'개발 > BACK' 카테고리의 다른 글
리눅스에서 "Error Occurred During Initialization of VM" 에러 해결 방법 (0) | 2024.07.12 |
---|---|
MySQL 내장 함수를 통해 비밀번호 암호화 하기 (0) | 2024.07.12 |
Spring Boot에서 DB 풀 사이즈와 Auto-Commit 설정 방법 (0) | 2024.07.12 |
NoSQL 데이터베이스 정의 및 예제 (0) | 2024.07.10 |
Spring Boot에서 Firebase Messaging 구현하기 (0) | 2024.07.10 |