*DCL(DATA CONTROL LANGUAGE) : 데이터 제어 언어
계정(사용자)에게 시스템 권한 또는 객체접근권한을 부여(GRANT)하거나 회수(REVOKE)하는 구문
>> 시스템 권한 : D8에 접근하는 권한, 객체를 생성할 수 있는 권한
- CREATE SESSION : 접속할 수 있는 권한
- CREATE TABLE : 테이블을 생성할 수 있는 권한
- CREATE VIEW : 뷰 생성할 수 있는 권한
- CREATE SEQUENCE : 시퀀스를 생성할 수 있는 권한
...
>> 객체 접근 권한 : 특정 객체들을 조작할 수 있는 권한
객체 접근 권한의 종류
| 권한종류 | |
|---|---|
| SELECT | TABLE, VIEW, SEQUENCE |
| INSERT | TABLE, VIEW |
| UPDATE | TABLE, VIEW |
| DELETE | TABLE, VIEW |
| … |
<aside> 💡 관리자 계정
</aside>
시스템 권한
alter session set "_oracle_script" = true;
CREATE USER SAMPLE IDENTIFIED BY 1234;
GRANT CREATE SESSION TO SAMPLE;
— USER에 권한을 부여하는 구문GRANT CREATE TABLE TO SAMPLE;객체 접근
GRANT SELECT ON TJOEUN.EMPLOYEE TO SAMPLE;GRANT INSERT ON TJOEUN.EMPLOYEE TO SAMPLE;권한 회수
REVOKE SELECT ON TJOEUN.EMPLOYEE FROM SAMPLE;
REVOKE INSERT ON TJOEUN.EMPLOYEE FROM SAMPLE;ROLE
: 특정 권한들을 하나의 집합으로 모아놓은 것
CONNECT : CREATE + SESSION
RESOURCE : CREATE TABLE + CREATE SEQUENCE + ...
DBA : 시스템 및 객체관리에 대한 모든 권한을 갖고 있는 롤
GRANT CONNECT, RESOURCE TO 계정명;