트랜잭션(Transaction)은 데이터베이스에서 하나의 논리적인 작업 단위로, 여러 작업을 하나로 묶어 모두 성공하거나 모두 실패해야 합니다. 트랜잭션은 데이터의 신뢰성과 일관성을 보장하기 위해 ACID 원칙
조인(Join)은 두 개 이상의 테이블을 연결하여 관련된 데이터를 하나의 결과로 조회하는 SQL 연산
조인(Join)은 데이터베이스에서 여러 테이블의 데이터를 결합하는 강력한 기능이지만, 잘못 사용하거나 최적화가 안 된 경우에는 DB에 상당한 부담을 줌
조인이 부담이 되는 경우
조인이 부담이 적은 경우
대표 명령어 및 예시:
CREATE : 테이블/데이터베이스 생성
CREATE TABLE user (id INT PRIMARY KEY, name VARCHAR(20));
ALTER : 테이블 구조 변경
ALTER TABLE user ADD email VARCHAR(50);
DROP : 테이블/데이터베이스 삭제
DROP TABLE user;
RENAME : 테이블 이름 변경
RENAME TABLE user TO member;
TRUNCATE : 테이블의 모든 데이터 삭제(구조는 남음)
TRUNCATE TABLE user;
대표 명령어 및 예시:
SELECT : 데이터 조회
SELECT * FROM user;
INSERT : 데이터 삽입
INSERT INTO user (id, name) VALUES (1, 'Alice');
UPDATE : 데이터 수정
UPDATE user SET name = 'Bob' WHERE id = 1;
DELETE : 데이터 삭제
DELETE FROM user WHERE id = 1;
대표 명령어 및 예시:
GRANT : 권한 부여
GRANT SELECT ON user TO 'user1';
REVOKE : 권한 회수
REVOKE SELECT ON user FROM 'user1';
COMMIT : 트랜잭션 확정(변경 내용 저장)
COMMIT;
ROLLBACK : 트랜잭션 취소(변경 내용 되돌림)
ROLLBACK;
요약
DDL: 데이터 구조 정의/변경/삭제 (CREATE, ALTER, DROP, TRUNCATE, RENAME)
DML: 데이터 조회/삽입/수정/삭제 (SELECT, INSERT, UPDATE, DELETE)
DCL: 권한/보안/트랜잭션 제어 (GRANT, REVOKE, COMMIT, ROLLBACK)
이 세 가지는 SQL의 기본적인 분류이며, 데이터베이스를 다루는 데 필수적으로 알아야 하는 개념입니다.