DML Data Manipulation Language
데이터를 처리(조회, 삽입, 수정, 삭제)하는데 사용하는 연어
INSERT: 데이터 추가
INSERT INTO 테이블명 (컬럼1, 컬럼2, ...)
VALUES (값1, 값2, ...);
INSERT INTO customers (first_name, last_name, email) VALUES
('Jane', 'Smith', 'jane.smith@email.com'),
('Mike', 'Johnson', 'mike.j@email.com'),
('Sarah', 'Williams', 'sarah.w@email.com');
UPDATE: 데이터 수정
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| UPDATE 테이블명
SET 컬럼1 = 값1, 컬럼2 = 값2, ...
WHERE 조건;
-- John Doe의 이메일 변경
UPDATE customers
SET email = 'john.new@email.com'
WHERE first_name = 'John' AND last_name = 'Doe';
-- Jane Smith의 정보 변경
UPDATE customers
SET email = 'jane.new@email.com',
active = FALSE
WHERE first_name = 'Jane' AND last_name = 'Smith';
|
⚠️ 중요: WHERE 절을 반드시 지정하세요!
DELETE
1
2
3
4
5
6
| DELETE FROM 테이블명
WHERE 조건;
-- Mike Johnson 삭제
DELETE FROM customers
WHERE first_name = 'Mike' AND last_name = 'Johnson';
|
안전한 DML 사용법
SELECT로 먼저 확인
1
2
3
4
5
| -- 1단계: 어떤 데이터가 영향받을지 먼저 조회
SELECT * FROM customers WHERE active = FALSE;
-- 2단계: 확인 후 DELETE 실행
DELETE FROM customers WHERE active = FALSE;
|
transaction 사용
1
2
3
4
5
6
7
8
9
10
11
12
| -- 트랜잭션 시작
START TRANSACTION;
-- 데이터 수정
UPDATE customers SET active = FALSE WHERE customer_id = 1;
-- 확인
SELECT * FROM customers WHERE customer_id = 1;
-- 만족하면 확정, 아니면 취소
COMMIT; -- 확정
-- ROLLBACK; -- 취소
|