프로그래밍기능사 · SQL 활용 과목
프로그래밍기능사 SQL 기본 개념 정리
중요도 ★★★★★ · 40% (추정)
AI가 새로 쓴 글 가운데, 작성과 분리된 AI 검증(다시 읽고 사실·수치 확인)을 통과한 단원만 싣습니다. 틀린 곳을 발견하면 알려 주세요.
개요
이 단원은 데이터베이스에 명령을 내리는 언어인 SQL 의 기본 문장을 다룹니다. SQL 명령은 하는 일에 따라 정의어(DDL), 조작어(DML), 제어어(DCL)로 나뉘며, 어느 명령이 어디에 속하는지 구분하는 것이 이 단원의 기본입니다.
DDL 은 표 같은 구조를 만들고 바꾸고 없애는 명령으로 CREATE, ALTER, DROP 이 있습니다. DML 은 표 안의 자료를 다루는 명령으로 조회하는 SELECT, 넣는 INSERT, 고치는 UPDATE, 지우는 DELETE 가 있습니다. DCL 은 권한을 다루는 명령으로 권한을 주는 GRANT 와 빼앗는 REVOKE 가 있습니다.
SELECT 문은 'SELECT 열 FROM 표 WHERE 조건 ORDER BY 열' 순서로 씁니다. WHERE 는 조건에 맞는 행만 고르고, ORDER BY 는 결과를 정렬하는데 ASC 는 오름차순(기본값), DESC 는 내림차순입니다. DROP 은 표 자체를 없애고, DELETE 는 표는 남긴 채 안의 행만 지운다는 차이도 꼭 기억해야 합니다.
핵심 개념
DDL (데이터 정의어)
표·뷰·인덱스 같은 데이터베이스 구조를 만들고 바꾸고 없애는 명령입니다. CREATE(만들기), ALTER(바꾸기), DROP(없애기)이 있습니다.
외우는 요령구조(틀)를 다루면 DDL.
DML (데이터 조작어)
표 안의 자료를 다루는 명령입니다. SELECT(조회), INSERT(넣기), UPDATE(고치기), DELETE(지우기)가 있습니다.
외우는 요령내용물(자료)을 다루면 DML.
DCL (데이터 제어어)
사용자 권한을 다루는 명령입니다. GRANT 는 권한을 주고, REVOKE 는 준 권한을 빼앗습니다. COMMIT·ROLLBACK 도 DCL 로 분류하기도 합니다.
외우는 요령grant = 주다, revoke = 취소하다.
SELECT 문의 기본 모양
SELECT 가져올 열 FROM 표 WHERE 조건 ORDER BY 정렬할 열 순서로 씁니다. 모든 열을 가져올 때는 * 를 씁니다.
외우는 요령'무엇을 – 어디서 – 어떤 조건으로 – 어떤 순서로'.
DROP 과 DELETE
DROP 은 표 자체를 데이터베이스에서 없애는 DDL 명령입니다. DELETE 는 표는 남겨 두고 조건에 맞는 행만 지우는 DML 명령입니다.
외우는 요령DROP 은 서랍장째 버리기, DELETE 는 서랍 속 물건만 버리기.
자주 나오는 포인트
- 명령어가 DDL·DML·DCL 가운데 어디에 속하는지 구분하는 문제를 대비하세요.
- ORDER BY 의 기본 정렬은 오름차순(ASC)이고, 내림차순은 DESC 입니다.
- DROP 과 DELETE 의 차이를 묻는 선지를 조심하세요.
- INSERT INTO … VALUES, UPDATE … SET, DELETE FROM 의 문장 모양을 묻습니다.
헷갈리는 것 비교: SQL 명령의 세 갈래
| 구분 | 하는 일 | 명령 |
|---|---|---|
| DDL | 구조 만들기·바꾸기·없애기 | CREATE, ALTER, DROP |
| DML | 자료 조회·넣기·고치기·지우기 | SELECT, INSERT, UPDATE, DELETE |
| DCL | 권한 주기·빼앗기 | GRANT, REVOKE |
대표 문제 3개
검수를 마친 예상문제 가운데 이 단원의 대표 문제입니다.
문제 1. 다음 중 DDL(데이터 정의어)에 해당하는 SQL 명령어는?
- ① UPDATE
- ② SELECT
- ③ CREATE
- ④ GRANT
▼ 정답과 해설 보기▲ 정답과 해설 접기
정답: ③ CREATE
핵심: DDL: CREATE·ALTER·DROP
SQL 명령어는 세 가지로 나뉩니다.
- DDL(정의): CREATE, ALTER, DROP
- DML(조작): SELECT, INSERT, UPDATE, DELETE
- DCL(제어): GRANT, REVOKE 등
틀린 선지
- ① UPDATE: UPDATE 는 데이터를 고치는 DML(데이터 조작어)입니다.
- ② SELECT: SELECT 는 데이터를 조회하는 DML 입니다.
- ④ GRANT: GRANT 는 권한을 주는 DCL(데이터 제어어)입니다.
문제 2. 사용자에게 주었던 권한을 회수하는 SQL 명령어는?
- ① DELETE
- ② GRANT
- ③ ROLLBACK
- ④ REVOKE
▼ 정답과 해설 보기▲ 정답과 해설 접기
정답: ④ REVOKE
핵심: GRANT 는 권한 주기, REVOKE 는 권한 회수
권한을 다루는 명령어는 DCL 입니다. GRANT 로 권한을 주고 REVOKE 로 권한을 거두어들입니다.
틀린 선지
- ① DELETE: DELETE 는 테이블의 행을 지웁니다.
- ② GRANT: GRANT 는 반대로 권한을 주는 명령어입니다.
- ③ ROLLBACK: ROLLBACK 은 트랜잭션 작업을 취소해 되돌립니다.
문제 3. 테이블은 그대로 두고, 조건에 맞는 행만 지우는 SQL 명령어는?
- ① ALTER
- ② DROP
- ③ DELETE
- ④ INSERT
▼ 정답과 해설 보기▲ 정답과 해설 접기
정답: ③ DELETE
핵심: DELETE 는 행 삭제, DROP 은 테이블 삭제
DELETE FROM 테이블 WHERE 조건; 형식으로 조건에 맞는 행만 지웁니다. 테이블의 구조는 남아 있습니다.
틀린 선지
- ① ALTER: ALTER 는 테이블 구조를 바꿉니다.
- ② DROP: DROP 은 테이블 자체를 없애는 DDL 명령어입니다.
- ④ INSERT: INSERT 는 새 행을 넣습니다.