정보처리기사 CBT
종목 메뉴

개념 한 쪽

정보처리기사 DCL — 권한 부여와 회수(GRANT·REVOKE)

DCL(데이터 제어어)은 데이터베이스를 공용으로 쓸 때 접근 권한을 제어하는 SQL 명령군이다. GRANT와 REVOKE라는 명령 구성과 '무엇이 DCL의 기능이고 아닌지'의 경계가 시험에서 반복된다.

2026-10-15 기준 · 정보처리기사 대시보드

이 개념을 문제로 확인하고 싶으면 이 개념 문제 10개 풀기 회원용

가입 없이 오늘의 10문제 바로 풀기 →

시험에 이렇게 나온다

출제기준 단원 「DCL」의 공개 문제 3개를 묻는 꼴별로 나누면 이렇습니다.

묻는 꼴문제 수무엇을 묻나
DCL 기능 판단(옳고 그름 고르기)1DCL이 수행하는 기능인지 아닌지 판단
용어·명칭 고르기(언어 분류)1정의에 맞는 SQL 언어명을 고르기
명령 성격 구별(이상항 찾기)1제시된 SQL 명령 중 성격이 다른 것 고르기

뜻

DCL(Data Control Language, 데이터 제어어)은 데이터베이스를 공용하기 위한 데이터 제어를 정의하고 기술하는 언어다. GRANT(권한 부여)와 REVOKE(권한 회수·취소) 명령으로 구성되어, 사용자의 데이터 접근 권한을 통제한다.

DCL의 기능 범위를 정확히 아는 것이 출제의 핵심이다. DCL은 권한 부여와 회수를 통해 보안, 무결성, 병행성(병행 제어)을 보장하고 트랜잭션 관리(롤백 등)와도 연결된다. 반면 스키마·구조 정의는 CREATE, ALTER 같은 DDL의 고유 기능이므로 DCL의 기능이 아니다. 'DCL의 기능으로 옳지 않은 것은?' 문제에서 '데이터베이스의 구조를 정의한다'는 보기가 나오면 그것이 정답이다.

DCL을 둘러싼 분류 문제도 자주 나온다. SQL 명령 중 나머지 셋과 성격이 다른 것을 고를 때, SELECT·UPDATE·INSERT가 DML인 사이에 GRANT가 있으면 권한 부여 명령인 DCL에 속하므로 GRANT를 고른다. REVOKE 역시 데이터의 사용 권한을 관리하는 DCL 문이다.

예제

'데이터베이스를 공용하기 위한 데이터 제어를 정의하고 기술하는 언어는?'처럼 정의를 묻는 문제가 기본형이다. '데이터 제어어(DCL)의 기능으로 옳지 않은 것은?'에서는 구조 정의가 DCL이 아니라 DDL의 기능임을 묻고, 보안·무결성·병행성은 DCL이 보장하는 항목으로 나온다. 부여했던 권한을 거두는 명령은 REVOKE다.

대표 기출 3문항

데이터 제어 언어(DCL)의 기능으로 볼 수 있는 것은?

  1. 데이터 정의 및 변경
  2. 데이터 검색
  3. 데이터 복구 및 병행제어
  4. 데이터 사용자와 DBMS 간의 인터페이스 제공
정답과 해설 보기

정답 ③ · 데이터 제어 언어(DCL)의 기능을 묻는 문제이다. DCL은 GRANT, REVOKE 같은 보안과 권한 부여 및 회수 기능과 COMMIT, ROLLBACK 같은 트랜잭션 제어 기능을 담당하므로 데이터 복구와 병행 제어가 DCL의 기능에 해당한다.

DCL은 데이터 제어 언어로, 권한 부여와 롤백 등 데이터 접근 제어 및 트랜잭션 관리를 담당하는 언어이다.

데이터베이스를 공용하기 위한 데이터 제어를 정의하고 기술하는 언어는?

  1. DDL(data definition language)
  2. DML(data manipulation language)
  3. DCL(data control language)
  4. DUL(data user language)
정답과 해설 보기

정답 ③ · 데이터베이스를 공용하기 위한 데이터 제어를 정의하고 기술하는 언어를 고르는 문제이다. SQL은 기능에 따라 DDL, DML, DCL로 구분되는데, DCL은 GRANT와 REVOKE 등을 통해 데이터에 대한 접근 권한을 부여하고 취소하는 제어 기능을 담당한다.

데이터베이스의 접근 권한과 제어를 담당하는 언어는 DCL(Data Control Language)이다.

SQL의 명령은 사용 용도에 따라 DDL, DML, DCL로 구분할 수 있다. 다음 명령 중 그 성격이 나머지 셋과 다른 것은?

  1. SELECT
  2. UPDATE
  3. INSERT
  4. GRANT
정답과 해설 보기

정답 ④ · SQL 명령어 중 나머지와 분류가 다른 것을 찾는 문제이다. SELECT, UPDATE, INSERT는 모두 데이터를 조회하거나 변경하는 데이터 조작어인 DML에 속한다.

DDL, DML, DCL 분류에서 데이터 조작은 DML, 권한 부여는 DCL이므로 GRANT가 유일하게 성격이 다르다.

자주 묻는 물음

DCL을 이루는 명령어는 무엇인가요?
GRANT와 REVOKE입니다. GRANT는 권한을 부여하고, REVOKE는 부여된 권한을 회수합니다.
DCL의 기능이 아닌 것은 무엇인가요?
구조 정의입니다. DCL은 권한 부여와 회수로 보안·무결성·병행성을 보장하지만, CREATE·ALTER 등으로 스키마를 정의하는 일은 DDL의 고유 기능입니다.
DCL은 DDL과 어떻게 다른가요?
DCL은 GRANT·REVOKE로 권한 부여와 회수를 맡고, DDL은 CREATE·ALTER 등으로 구조를 정의합니다. 구조 정의는 DCL의 기능이 아닙니다.
이 개념 문제 10개 풀기 회원용

정보처리기사 풀이 세트에서 이 개념의 문제 10개를 바로 풀어 보세요.