Data Control Language (DCL)
포스트
취소

Data Control Language (DCL)

해당 포스트는 SQLD를 학습하며 정리한 내용에 대한 포스트입니다.


이론을 학습한 내용을 정리하고 퀴즈, 기출문제 등을 기록하려고 합니다.


🌈 Data Control Language (DCL)

SQL 문장들의 종류

종류명령어설명
데이터 조작어
DML
(Data Manipulation Language)
SELECT데이터베이스에 들어 있는 데이터를 조회하거나
검색하기 위한 명령어를 말하는 것으로 RETRIEVE 라고도 한다.
 INSERT
UPDATE
DELETE
데이터베이스의 테이블에 들어 있는 데이터에 변형을 하는 종류의 명령어들
데이터를 테이블에 새로운 행을 집어넣거나
원하지 않는 데이터를 수정/삭제하는 것들의 명령어들을 DML이라고 한다.
데이터 정의어
DDL
(Data Definition Language)
CREATE
ALTER
DROP
RENAME
테이블과 같은 데이터 구조를 정의하는데 사용되는 명령어들
구조를 생성하거나 변경하거나 삭제하거나
이름을 바꾸는 데이터 구조와 관련된 명령어들을 DDL 이라고 부른다.
데이터 제어어
DCL
(Data Control Language)
GRANT
REVOKE
데이터베이스에 접근하고 객체들을 사용하도록 권한을 주고
회수하는 명령어를 DCL이라고 한다.
트랜잭션 제어어
TCL
(Transaction Control Language)
COMMIT
ROLLBACK
논리적인 작업의 단위를 묶어서 DML에 의해 조작된 결과를
작업단위(트랜잭션) 별로 제어하는 명령어

💻 GRANT

GRANT문은 데이터베이스 사용자에게 권한을 부여한다.

데이터베이스 사용을 위해서는 권한이 필요하며 연결, 입력, 수정, 삭제, 조회를 할 수 있다.

1
GRANT privileges ON object TO user;
  • privileges는 권한을 의미하며 object는 테이블명이다.
  • user는 Oracle 데이터베이스 사용자를 지정하면 된다

Privileges(권한)의 종류

권한설명
SELECT지정된 테이블에 대해서 SELECT 권한을 부여한다.
INSERT지정된 테이블에 대해서 INSERT 권한을 부여한다.
UPDATE지정된 테이블에 대해서 UPDATE 권한을 부여한다.
DELETE지정된 테이블에 대해서 DELETE 권한을 부여한다.
REFERENCES지정된 테이블을 참조하는 제약조건을 생성하는 권한을 부여한다.
ALTER지정된 테이블에 대해서 수정할 수 있는 권한을 부여한다.
INDEX지정된 테이블에 대해서 인덱스를 생성할 수 있는 권한을 부여한다.
ALL테이블에 대한 모든 권한을 부여한다.

GRANT

WITH GRANT OPTION

  • WITH GRANT OPTION

    • 특정 사용자에게 권한을 부여할 수 있는 권한을 부여한다.

    • 권한을 A 사용자가 B에 부여하고 B가 다시 C를 부여한 후에 권한을 취소(Revoke)하면 모든 권한이 회수된다.

    • B와 C의 권한 회수

  • WITH ADMIN OPTION

    • 테이블에 대한 모든 권한을 부여한다.

    • 권한을 A 사용자가 B에 부여하고 B가 다시 C에게 부여한 후에 권한을 취소(Revoke)하면 B사용자 권한만 취소된다.

GRANT


ROLE

권한들을 묶어서 한꺼번에 부여한다.

DATABASE에서 OBJECT(테이블, 프로시져, 함수, 뷰, 트리거 등)의 권한을 묶어서 권한을 관리할 수가 있다.

REVOKE

REVOKE문은 데이터베이스 사용자에게 부여된 권한을 회수한다.

REVOKE문

1
REVOKE privileges ON object FROM user;


🎯 추가 내용

👉


📚 레퍼런스

정미나. (유튜브 선생님에게 배우는) 유선배 SQL개발자(SQLD) 과외노트 / [정미나 저] (2023). Print.

한국데이터산업진흥원. SQL 자격검정 실전문제 : 국가공인 SQL전문가·국가공인 SQL개발자 / 한국데이터산업진흥원 [편] (2020). Print.

SQL 개발자 (SQLD) 자격증 따기 Part.2 / [유용한IT학습]

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.