데이터베이스 언어(Database Language)는 데이터베이스를 구축하고 이용하기 위한 데이터베이스 시스템과의 통신 수단으로 데이터베이스를 설계, 정의, 질의, 조작, 관리하기 위한 언어들입니다. 데이터베이스 언어는 데이터베이스 시스템의 기능을 수행하기 위해 다양한 유형으로 나뉩니다.
CREATE: 데이터베이스 객체 생성 CREATE TABLE Users (
id INT PRIMARY KEY,
name VARCHAR(50),
email VARCHAR(50)
);ALTER: 기존 객체 변경 ALTER TABLE Users ADD COLUMN age INT;DROP: 데이터베이스 객체 삭제 DROP TABLE Users;TRUNCATE: 테이블 데이터 초기화 (구조는 유지) TRUNCATE TABLE Users;INSERT: 데이터 삽입 INSERT INTO Users (id, name, email) VALUES (1, 'Alice', 'alice@example.com');UPDATE: 데이터 수정 UPDATE Users SET email = 'newemail@example.com' WHERE id = 1;DELETE: 데이터 삭제 DELETE FROM Users WHERE id = 1;SELECT: 데이터 조회 SELECT * FROM Users WHERE name = 'Alice';GRANT: 사용자에게 권한 부여 GRANT SELECT, INSERT ON Users TO 'username';REVOKE: 사용자 권한 회수 REVOKE INSERT ON Users FROM 'username';COMMIT: 트랜잭션의 변경 내용을 영구적으로 반영 COMMIT;ROLLBACK: 트랜잭션 변경 내용을 취소 ROLLBACK;SAVEPOINT: 트랜잭션 내 특정 시점을 설정 SAVEPOINT sp1;RELEASE SAVEPOINT: 설정한 SAVEPOINT를 제거 RELEASE SAVEPOINT sp1;SET TRANSACTION: 트랜잭션 속성 설정 SET TRANSACTION READ ONLY;| 언어 | 주요 역할 | 예시 명령어 |
|---|---|---|
| DDL | 데이터베이스 구조 정의 및 관리 | CREATE, ALTER, DROP |
| DML | 데이터 조작 및 관리 | SELECT, INSERT, UPDATE |
| DCL | 데이터 접근 권한 제어 | GRANT, REVOKE |
| TCL | 트랜잭션 관리 | COMMIT, ROLLBACK, SAVEPOINT |
DDL 활용
새 테이블 생성:
CREATE TABLE Products (
id INT PRIMARY KEY,
name VARCHAR(50),
price DECIMAL(10, 2)
);
DML 활용
데이터 삽입 및 조회:
INSERT INTO Products (id, name, price) VALUES (1, 'Laptop', 1500.00);
SELECT * FROM Products WHERE price > 1000;
DCL 활용
읽기 권한 부여:
GRANT SELECT ON Products TO 'read_user';
TCL 활용
트랜잭션 처리:
BEGIN;
INSERT INTO Products (id, name, price) VALUES (2, 'Smartphone', 800.00);
COMMIT;