반응형
1. DCL(Data Control Language)의 개념
DCL(데이터 제어어)는 데이터의 보안, 무결성, 회복, 병행 제어 등을 정의하는 데 사용하는 언어
- DCL은 DBA가 데이터 관리 목적으로 사용
2. GRANT/REVOKE
- 데이터베이스 관리자가 사용자에게 권한 부여 혹은 취소하기 위한 명령어
- GRANT
- 데이터베이스 관리자가 사용자에게 권한 부여
- REVOKE
- 데이터베이스 관리자가 사용자에게 권한 취소
- 사용자 등급 지정 및 해제 표기법
GRANT 사용자등급 TO 사용자_ID_리스트 [IDENTIFIED BY 암호];
REVOKE 사용자등급 FROM 사용자_ID_리스트
// 사용자 ID가 '테스트' 인 사람에게 데이터베이스 및 테이블 생성 권한 부여 SQL
GRANT RESOURCE TO 테스트
// 사용자 ID가 '인간' 인 사람에게는 단순 정보 검색할 수 있는 권한 부여 SQL
GRANT CONNECT TO 인간
- 테이블 및 속성에 대한 권한 부여 및 취소
GRANT 권한_리스트 ON 개체 TO 사용자 [WITH GRANT OPTION];
REVOKE [GRANT OPTION FOR] 권한_리스트 ON 개체 FROM 사용자 [CASCADE];- 권한 종류: ALL, SELECT, INSERT, DELETE, UPDATE, ALTER 등
- WITH GRANT OPTION : 부여받은 권한을 다른 사용자에게 다시 부여
- GRANT FOR OPTION : 다른 사용자에게 권한을 부여하는 권한 취소
- CASCADE : 권한을 부여받았던 사용자가 타 사용자에게 부여한 권한도 연쇄적으로 취소
3. COMMIT
트랜잭션이 성공적으로 끝난 후 변경된 내용을 데이터베이스에 반영
- COMMIT 명령을 실행하지 않아도 DML문이 성공적으로 완료되면 자동으로 커밋되고, DML이 실패하면 자동으로 ROLLBACK이 되도록 AUTO_COMMIT 설정 가능
4. ROLLBACK
COMMIT 되지 않은 변경된 내용을 취소하고 데이터베이스를 이전 상태로 되돌리는 명령
5. SAVEPOINT
트랜잭션 내에 ROLLBACK 할 위치인 저장점을 저장
- 저장점을 지정할 때는 이름을 부여하며, 롤백 시 지정된 저장점까지의 트랜잭션 처리 내용이 취소된다.
- 표기법
SAVEPOINT 사용할 세이브포인트 명칭
ROLLBACK TO 돌아갈 세이브포인트 명칭
INSERT INTO TAB1 VALUES(1); /*COL1 : 1 */
INSERT INTO TAB1 VALUES(2); /*COL1 : 1,2 */
SAVEPOINT SV1; /*COL1 : 1,2 */
UPDATE TAB1 SET COL1=4 WHERE CO1=2; /*COL1 : 1,4 */
SAVEPOINT SV1; /*COL1 : 1,4 */
DELETE TAB1 WHERE COL1>=2; /*COL1 : 1 */
ROLLBACK TO SV1; /*COL1 : 1,2 맨 처음 지정한 SV1으로 ROLLBACK*/
INSERT INTO TAB1 VALUES(3); /*COL1 : 1,3 */
SELECT MAX(COL1) FROM TAB1; /*MAX(COL1) : 3 */
반응형
'자격증 > 정보처리필기' 카테고리의 다른 글
[정보처리산업기사] 81강 SELECT - 1 (0) | 2022.04.01 |
---|---|
[정보처리산업기사] 80강 DML (0) | 2022.04.01 |
[정보처리산업기사] 78강 DDL (0) | 2022.04.01 |
[정보처리산업기사] 77강 SQL의 개념 (0) | 2022.04.01 |
[정보처리산업기사] 76강 뷰(VIEW) (0) | 2022.04.01 |