SQL – DCL
- DCL은 데이터의 보안, 무결성, 회복, 병행 제어 등을 정의하는 데 사용하는 언어이다.
- DCL은 데이터베이스 관리자(DBA)가 데이터 관리를 목적으로 사용한다.
명령어 | 기능 |
COMMIT | 트랜잭션 처리가 정상적으로 완료된 후 트랜잭션이 수행한 내용을 데이터베이스에 반영하는 명령 |
ROLLBACK | 데이터베이스 조작 작업이 비정상적으로 종료되었을 때 원래의 상태로 복구함 변경되었으나 아직 COMMIT되지 않은 모든 내용들을 취소하고 데이터베이스를 이전 상태로 되돌리는 명령어 |
GRANT | 데이터베이스 사용자에게 사용 권한을 부여함 |
REVOKE | 데이터베이스 사용자의 사용 권한을 취소함 |
SAVEPOINT | 트랜잭션 내에 ROLLBACK할 위치인 저장점을 지정하는 명령어 ROLLBACK할 때 지정된 저장점까지의 트랜잭션 처리 내용이 모두 취소된다. |
GRANT / REVOKE
l 데이터베이스 관리자가 데이터베이스 사용자에게 권한을 부여하거나 취소하기 위한 명령
GRANT 사용자등급 TO 사용자_ID_리스트 [IDENTIFIED BY 암호];
REVOKE 사용자등급 FROM 사용자_ID_리스트;
- 사용자등급
1. DBA : 데이터베이스 관리자
2. RESOURCE : 데이터베이스 및 테이블 생성 가능자
3. CONNECT : 단순 사용자
l 테이블 및 속성에 대한 권한 부여 및 취소
GRANT 권한_리스트 ON 개체 TO 사용자 [WITH GRANT OPTION];
REVOKE [GRANT OPTION FOR] 권한_리스트 ON 개체 FROM 사용자 [CASCADE];
- 권한 종류 : ALL, SELECT, INSERT, DELETE, UPDATE, ALTER 등
- WITH GRANT OPTION : 부여받은 권한을 다른 사용자에게 다시 부여할 수 있는 권한을 부여함
- GRANT OPTION FOR : 다른 사용자에게 권한을 부여할 수 있는 권한을 취소함
- CASCADE : 권한 취소 시 권한을 부여받았던 사용자가 다른 사용자에게 부여한 권한도 연쇄적으로 취소함
EX ) SAVEPOINT ‘S1’ 을 설정하고 사원번호가 20인 사원의 정보를 삭제하시오
SAVEPOINT S1;
DELETE FROM 사원 WHERE 사원번호=20;
EX) SAVEPOINT ‘S2’까지 ROLLBACK을 수행하시오
ROLLBACK TO S2;
EX) SAVEPOINT 없이 ROLLBACK을 수행하시오
ROLLBACK;
'정보처리기사' 카테고리의 다른 글
SQL - DML (0) | 2023.10.04 |
---|---|
SQL - DDL (0) | 2023.10.04 |
서브네팅 Subnetting (0) | 2023.09.22 |