DCL은 Data Control Language의 약자로 데이터 베이스의 보안, 무결성, 데이터 회복, 병생 수행제어 등을 정의하는데 사용된다. 객체에 대한 권한 부여등이 대표적이다.
명령어 | 기능 |
COMMIT | 데이터베이스 조작 작업이 정상적으로 완료되었음을 알려주는 명령어 |
ROLLBACK | 데이터베이스 조작 작업이 비정상적으로 종료되었을 때 원래의 상태로 복구하는 명령어 |
GRANT | 데이터베이스 사용자에게 사용권한을 부여함 |
REVOKE | 데이터베이스 사용자의 사용권한을 취소함 |
DCL 명령어는 DB에 대한 접근 제어를 수행할 때와 Transaction 처리에서 주로 활용된다.
ex) 지하철을 생각해보자
지하철을 사용하려고 할 때 지하철표가 없으면 어떻게 되는가?
(물론 요즘은 카드로 하지만 카드에 교통카드 기능이 없다면으로 생각해보기를 바란다.)
게이트는 당신의 출입을 막을 것이다.
권한을 부여받지 않았다면 사용 못하는 것이고, 권한이 있는 사용자만 사용하게 하는 것 이것이 DCL의 GRANT와 REVOKE이다.
GRANT: 사용자에게 사용 권한을 부여하는 것
REVOKE: 사용자에게 사용 권한을 뺏는 것
COMMIT과 ROLLBACK은 Transaction에서 상세히 다뤄볼 예정입니다.