써먹는 웹개발
Section 73. SQL - DCL 본문
DCL의 개념
- DCL은 데이터의 보안, 무결성, 회복, 병행 제어 등을 정의하는 데 사용하는 언어이다.
- DCL은 데이터베이스 관리자가 데이터 관리를 목적으로 사용한다.
- DCL의 유형
1) COMMIT : 데이터베이스 조작 작업을 영구적으로 반영하여 완료한다.
2) ROLLBACK : 데이터베이스 조작 작업이 비정상적으로 종료되었을 때 원래의 상태로 복구한다.
3) GRANT : 데이터베이스 사용자에게 사용 권한을 부여한다.
4) REVOKE : 데이터베이스 사용자의 사용 권한을 취소한다.
-------------------------------------------------------------
문제 1. 김하늘에게 학생 텡비블에 대한 접근 및 조작에 관한 모든 권한을 부여하는 SQL문을 작성하시오.
A) GRANT ALL 학생 TO 김하늘;
문제 2. 김하늘에게 <강좌> 테이블에 대해 삭제하는 권한을 부여하고, <강좌> 테이블에 대해 삭제하는 권한을 다른 사람에게 부여할 수 있는 권한을 부여하는 SQL문을 작성하시오.
A) GRANT DELETE ALL 강좌 TO 김하늘 WITH GRANT OPTION;
문제 3. 임꺽정에게 부여된 <교수> 테이블에 대한 SELECT, INSERT, DELETE 권한을 취소하는 SQL문을 작성하시오.
A) REVOKE SELECT, INSERT, DELETE ON 교수 FROM 임꺽정;
문제 4. <수강> 테이블에 대해 임꺽정에게 부여된 UPDATE 권한과 임꺽정이 다른 사람에게 UPDATE 권한을 부여할 수 있는 권한, 그리고 임꺽정이 다른 사람에게 부여한 UPDATE 권한도 모두 취소하는 SQL문을 작성하시오.
A) REVOKE UPDATE ON 수강 FROM 임꺽정 CASCADE;
문제 5. COMMIT의 개념은?
A) 트랜잭션 처리가 정상적으로 종료되어 트랜잭션이 수행한 변경 내용을 데이터베이스에 반영하는 연산이다.