Search

DDL / DML / DCL / TCL

생성일
2023/11/29 20:37
태그

DDL(Data Definition Language)

DDL이란 SQL(Structured Query Language)의 하위 집합으로, 데이터베이스의 구조와 테이블 뷰, 인덱스, 프로시저와 같은 개체를 정의하는데 사용되는 명령어를 말한다. 명령어에는 CREATE, ALTER, DROP, TRUNCATE, RENAME이 있다.
DDL 문은 즉시 실행되고 영구적으로 적용되어, 롤백이 불가능하기 때문에 유의해서 사용해야한다. 즉, 객체가 생성, 변경, 삭제되면 변경 사항을 취소할 수 없다. 그렇기 때문에 일반적으로 DDL 문은 데이터베이스 구조를 수정할 수 있는 적절한 권한이 필요하고, 그러한 권한을 가진 관리자나 개발자가 실행한다.
DDL의 사용 목적은 다음과 같다.
데이터베이스 생성 및 관리
DDL 문으로 데이터베이스의 구조를 생성하고 관리하는데 사용한다.
데이터 무결성
DDL 문은 기본 키, 외래 키, 고유 키와 같은 데이터 무결성 제약 조건을 적용하여 데이터의 정확성과 일관성을 확인하는데 도움을 준다.
성능
데이터베이스의 성능을 향상 시킬 수 있는 인덱스 및 기타 개체를 만드는데 사용된다.
데이터 보안
DDL 문을 사용하여 데이터베이스 개체에 대한 권한을 설정하여, 데이터베이스 개체에 액세스하고 조작할 수 있는 사람을 제어할 수 있다.
데이터 백업 및 복구
DDL 문은 백업 및 복구 절차를 생성하고 유지하는데 사용된다.

DML(Data Manipulation Language)

DML이란 데이터베이스 내의 데이터를 조작하는데 사용되는 SQL의 하위 집합으로, 데이터베이스에서 데이터를 삽입, 삭제, 업데이트 하는데 사용된다. 명령어에는 SELECT, INSERT, UPDATE, DELETE가 있다.
DML 문은 즉시 실행되며 롤백 명령어로 취소할 수 있다. DML 문은 개체를 생성, 변경, 삭제하는데 사용되지만, 해당 개체 내의 데이터를 조작하는데 사용된다는 점에 유의해야 한다. DML 문은 일반적으로 데이터베이스와 상호 작용하는 응용 프로그램 또는 시스템과 같은 최종 사용자에 의해 실행된다.
DML의 사용 목적은 다음과 같다.
데이터 입력 및 유지 관리
DML 문은 데이터베이스에 새 데이터를 삽입하고 기존 데이터를 업데이트하거나 삭제하는데 사용된다. 이는 데이터의 정확성과 완전성을 유지하는데 필수적이다.
데이터 검색
DML 문은 데이터베이스에서 하나 이상의 테이블에서 데이터를 검색하는데 사용된다.
데이터 무결성
DML 문은 관련 테이블의 데이터를 업데이트하거나 삭제하여, 참조 무결성과 같은 무결성 제약 조건을 적용하는데 사용될 수 있다.
데이터 감사
DML 문을 누가 사용하여 데이터를 변경했는지, 언제 변경했는지 등 데이터베이스의 데이터 변경 사항을 추적할 수 있다.
데이터 백업 및 복구
DML 문을 사용하여 백업 및 복구 절차를 생성하고 유지 관리할 수 있다.

DCL(Data Control Language)

DCL이란 데이터베이스 내의 데이터에 대한 엑세스를 제어하기 위한 SQL의 하위 집합으로, 데이터베이스의 접근 권한 부여 및 박탈을 조작하는데 사용된다. 명령어에는 GRANT, REVOKE가 있다.

TCL(Transaction Control Language)

TCL이란 데이터베이스에서 트랜잭션을 제어하기 위한 SQL의 하위 집합으로, 트랜잭션을 통해 여러 DML에 의해 조작된 결과를 제어하는데 사용된다. 명령어에는 TRANSACTION START, ROLLBACK, COMMIT, SAVEPOINT가 있다.

참고