티스토리 뷰

프로그래밍 언어/SQL

[SQL] DCL (grant, revoke), TCL

거북이의 기술블로그 2024. 10. 18. 23:09
1. DCL 이란?
2. GRANT
3. REVOKE
4. TCl

 

DCL 이란?

  • 사용자 권한 관련하여, 부여 및 회수하는 역할
  • GRANT, REVOKE를 이용하여 사용자 권한을 관리한다

 

GRANT

  • 권한 부여
    • 권한 대상 : {user_name | PUBLIC | role_name}
      • user_name : 사용자
      • PUBLIC : 모든 사용자 적용
      • role_name :  역할명
    • 객체 대상: 데이터베이스, 테이블, 뷰. 스키마, 함수 등
    • WITH GRANT OPTION : 해당 부여된 권한을 다른 사람에게도 권한을 줄 수 있는 권한 설정
[문법]

Grant [부여하려는 권한 유형] ON [객체 대상(범위)] TO [권한대상] [WITH GRANT OPTION]
GRANT SELECT, INSERT, DELETE ON TEST_DB TO USERA WITH GRANT OPTION;

 

REVOKE

  • 권한 회수
    • 권한 대상 : {user_name | PUBLIC | role_name}
      • user_name : 사용자
      • PUBLIC : 모든 사용자 적용
      • role_name :  역할명
    • 객체 대상 : 데이터베이스, 테이블, 뷰. 스키마, 함수 등
[문법]

REVOKE [회수하려는 권한 유형] ON [객체 대상 (범위)] FROM [권한대상];
REVOKE SELECT, INSERT ON my_table from userA;

 

TCL

  • 트랜잭션의 제어를 담당하는 SQL언어
  • commit, rollback, savepoint, set transaction 을 사용

 

TCL 4가지 예시

  • COMMIT
    • 모든 작업이 완료되어 COMMIT을 해주어 DB에 적용
Delete From my_table where username = "test";
COMMIT;
  • ROLLBACK
    • 이전 COMMIT 시기로 ROLLBACK
Delete From my_table where username="test";
ROLLBACK;
  • SAVEPOINT
    • 지점을 지정하여, 해당 commit 시점으로 되돌아감
Insert Into my_table (username, age) Values("test1", 100);
SAVEPOINT sp1;

Insert Into my_table (username, age) Values("test2" ,200);
ROLLBACK TO sp1;
COMMIT;
  • SET TRANSACTION
    • 총 4단계로 격리 수준이 나눠짐
      • Read Uncommitted : 트랜잭션이 완료되지 않은 데이터 읽기
      • Read committed : 트랜잭션이 완료된 데이터 읽기
      • Repeatable read : 트랜잭션 동안 동일한 쿼리의 결과가 항상 동일
      • Serializable : 가장 엄격한 격리 수준
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
BEGIN;
Update my_tale set username = "testUser" where username="test";
COMMIT;

'프로그래밍 언어 > SQL' 카테고리의 다른 글

[SQL] 인덱스  (1) 2024.10.20
[SQL] 데이터 타입  (0) 2024.10.18
[SQL] 여러 종류의 생성/삭제(create , drop)  (0) 2024.10.18
[SQL] DDL ( create, alter, drop, truncate )  (0) 2024.10.18
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함