DCL(Data Control Language)

m_ngyeong·2024년 4월 17일
0

Database(DB)

목록 보기
3/4
post-thumbnail

SQL


DCL(Data Control Language)

DCL은 데이터 제어어로 데이터의 보안, 무결성, 회복, 병행 제어 등을 정의하는 데 사용하는 언어이다.

  • 데이터베이스 관리자(DBA)가 데이터 관리를 목적으로 사용

💚 COMMIT :

COMMIT은 명령에 의해 수행된 결과를 실제로 물리적 디스크로 저장하고, 데이터베이스 조각 작업이 정상적으로 완료되었음을 관리자에게 알려준다.

💚 ROLLBACK :

ROLLBACK은 데이터베이스 조작 작업이 비정상적으로 종료되었을 때 원래의 상태로 복구한다.

  • 변경되었으나 아직 COMMIT되지 않은 모든 내용들을 취소하고 데이터베이스를 이전 상태로 되돌리는 명령어
  • 트랜잭션 전체가 성공적으로 끝나지 못하면 일부 변경된 내용만 데이터베이스에 반영되는 비일관성(Inconsistency) 상태가 될 수 있기에 일부분만 완료된 트랜잭션은 롤백(ROLLBACK )이 되어야 함

💚 GRANT / REVOKE :

GRANT은 데이터베이스 사용자에게 사용 권한을 부여한다.
📍ex) DBA가 사용자 PARK에게 테이블 [STUDENT]의 데이터를 갱신할 수 있는 시스템 권한을 부여하는 SQL문 작성

GRANT UPDATE ON STUDENT TO PARK;

REVOKE은 데이터베이스 사용자에게 사용 권한을 취소한다.
📍ex) DB가 사용자 ID가 "STAR"인 사람에게 부여한 <고객> 테이블에 대한 권한 중 UPDATE 권한을 다른 사람에게 부여할 수 있는 권한만 취소하는 SQL문 작성

REVOKE GRANT OPTION FOR UPDATE ON 고객 FROM STAR;


참고,
길벗알앤디. 『정보처리기사 실기 단기완성』. 길벗. 2023.

profile
사용자 경험 향상과 지속적인 성장을 추구하는 프론트엔드 개발자 ʚȉɞ

0개의 댓글