DCL, DDL, DML

Gunjoo Ahn·2022년 8월 14일
0

📌DDL : Data Definiton Language

테이블과 같은 데이터 구조를 정의하는데 사용되는 명령어들로 (생성, 변경, 삭제, 이름변경) 데이터 구조와 관련된 명령어들을 말한다. DDL의 모든 명령어는 자동으로 커밋되어 모든 변경 사항을 영구적으로 저장한다.

📌DML : Data Manipulation Language

DML은 데이터를 수정하는 데 사용된다. 데이터의 모든 형태의 변경을 담당한다.
DML의 명령은 자동 커밋되지 않으므로 데이터의 모든 변경 사항을 영구적으로 저장할 수 없다. 영구 저장을 위해 COMMIT을 해서 TRANSACTION을 종료해야한다. COMMIT 전에 ROLLBACK될 수 있다.

📌DCL : Data Control Language

DCL은 데이터베이스 사용자로부터 권한을 부여하고 회수하는 데 사용한다. DCL도 자동 커밋된다.

📌TCL : Transaction Control Language

TCL은 트랜잭션을 제어하는 명령어들로 DML( INSERT, DELETE, UPDATE )에서만 사용할 수 있다(DDL, DCL은 자동 커밋되기 때문). 트랜잭션 작업 결과를 저장 및 종료하거나(COMMIT), 마지막 커밋 시점으로 복원(ROLLBACK)하는 등의 작업을 한다.



Select를 DQL(Data Query Language)로 빼는 경우도 있다. 데이터 조작의 범위를 실제 데이터를 변경하는 것만 데이터 조작이냐, 검색도 데이터 조작으로 볼 것이냐의 차이로 보인다.

Reference

https://brownbears.tistory.com/180
https://www.javatpoint.com/dbms-sql-command
https://ittutorial.org/oracle-sql-tutorials-chapter-1-1/
https://iamfreeman.tistory.com/entry/DBMS-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EC%96%B8%EC%96%B4-DDL-DML-DCL-TCL-%EC%9D%98-%EC%A0%95%EC%9D%98

profile
Backend Developer

0개의 댓글