SQL---DCL 문 집합

DCL은 데이터 제어 언어(Data Control Language, DCL)입니다.데이터베이스에서 데이터 권한을 제어하는 기능을 갖추고 있다.
  • GRANT 정의 권한
  • GRANT    1, 2...
    ON         
    TO      1, 2...
    (WITH GRANT OPTION) ;
    

       
    GRANT 자문에 지정된 작업 객체에 대한 권한을 지정된 사용자에게 부여한다는 의미입니다.
    데이터 객체 유형에 따라 다양한 작업 권한이 있는 일반적인 작업 권한은 다음과 같습니다.
    공통 작업 권한
    대상
    객체 유형
    조작 권한
    속성 열
    TABLE
    SELECT,INSERT,UPDATE,DELETE,ALL PRIVILEGES

    TABLE
    SELECT,INSERT,UPDATE,DELETE,ALL PRIVILEGES
    기본표
    TABLE
    SELECT,INSERT,UPDATE,DELETE,ALTER,INDEX,ALL PRIVILEGES
    데이터베이스
    DATABASE
    CREATE TABLE,ALTER TABLE
    승인된 사용자는 특정 사용자 또는 PUBLIC, 즉 전체 사용자일 수 있습니다.
    WITH GRANT OPTION은 어떤 권한을 얻은 사용자가 그 권한을 다른 사용자에게 다시 부여할 수도 있다는 뜻이다.권한을 정의할 때 WITH GRANT OPTION을 지정하지 않으면 권한을 가진 사용자는 해당 권한만 사용할 수 있지만 권한을 전파할 수는 없습니다.
    예1: 사용자 U1에게 Student 테이블 조회 권한 부여
    GRANT SELECT
    ON TABLE Student
    TO U1;

    예2: Student표를 조회하고 학번을 수정할 수 있는 권한을 사용자에게 부여한다. U2:
    GRANT UPDATE(Sno),SELECT
    ON TABLE Student
    TO U2;

    예3: 테이블 SC에 대한 INSERT 권한을 U3 사용자에게 부여하고 이 권한을 다른 사용자에게 부여할 수 있습니다.
    GRANT INSERT 
    ON TABLE SC 
    TO U3
    WITH GRANT OPTION;
  • REVOKE 회수 권한
  • REVOKE  1, 2...
    ON       
    FROM  1, 2...;

    REVOKE를 통해 정의된 권한을 취소합니다.
    예1: 사용자 U2의 학생 번호 수정 권한을 취소합니다.
    REVOKE UPDATE(Sno)
    ON TABLE Student
    FROM U2;

    예2: SC 테이블에 대한 사용자 U3의 INSERT 권한 취소:
    REVOKE INSERT 
    ON TABLE SC 
    FROM U3;

    권한을 회수할 때 DBMS는 등급을 연결하여 회수하는 전략을 채택한다. 즉, U3 권한을 회수하는 동시에 U3이 U4에게 부여한 권한을 회수한다.

    좋은 웹페이지 즐겨찾기