SQL

SQL - 문장의 종류

데이터_박과장 2023. 10. 28. 15:36

데이터 조작어

Data Manipulation Language (DML)

데이터의 입력/수정/삭제 /조회를 담당합니다. 데이터 조작어에 해당하는 명령어는 위 순서대로 INSERT/UPDATE/DELETE/SELECT로 구성됩니다.

 

데이터 정의어

Data Definition Language (DDL)

데이터베이스 생성 및 테이블 생성 / 구조 변경/삭제 /이름 변경을 담당합니다.

일단 DML이랑 비교했을 때, 삭제가 겹치죠? 주의해야합니다. 빈출이거든요. 데이터 정의어는 DB를 구현할 때, 가장 먼저 사용하는 언어들입니다.

 

생성은 CREATE 구조 변경은 ALTER 여기서 삭제는 DROP 이름 변경은 RENAME 입니다.

지금 적고있는 명령어들은 코드를 한번씩 보여드리면서 이해시켜드릴겁니다.

 

데이터 제어어

Data Control Language (DCL)

데이터베이스에 접근하고 객체들을 사용하도록 권한을 주고 회수하는 명령어들을 모아둔 것입니다. DBA분들과 관련있죠.

권한 부여는 GRANT 권한 제한,회수는 REVOKE입니다.

 

트랜잭션 제어어

Transaction Control Language

실행 여부를 결정하는 제어어입니다. 말이 조금 이상하긴한데, 코드를 진행시킨다면 승인(COMMIT) 명령어를 사용합니다. 그리고 이를 취소시키는 명령어로 ROLLBACK이 있습니다.

 

다만, 가끔 어떤 문제에서는 COMMIT / ROLLBACK을 TCL이 아니라 DCL로 묶기도 합니다. 즉, DCL : ROLLBACK / DCL : COMMIT 도 맞는 말입니다.


이제 문제를 풀어봅시다!

 

Q. 데이터 제어어(DCL)에 해당하는 명령어는?

1) INSERT

2) RENAME

3) COMMIT

4) REVOKE

쉽다 이건! 1번은 입력이므로 DML에 해당합니다. 2번은 이름 변경이므로 DDL에 해당합니다. 3번은 승인이므로 TCL입니다. 4번은 권한 제한이므로 DCL이 맞습니다.

 

Q. 다음 내용과 매칭되지않는 SQL 명령어는?

테이블 구조를 생성, 변경, 삭제하는 등 데이터 구조를 정의하는데 사용되는 명령어이다.

1) CREATE

2) GRANT

3) ALTER

4) DROP

테이블 구조를 생성? 이건 DB를 짜는데 시작이 되는 DDL을 묻고있는 것입니다. 따라서 권한을 부여하는 GRANT는 DCL에 해당하므로 틀렸습니다.

'SQL' 카테고리의 다른 글

SQL - DDL 실습  (0) 2023.10.28
SQL - 데이터 적재 및 사용 (소상공인 데이터셋)  (0) 2023.10.28
SQL - 정규화  (2) 2023.10.28
SQL - 성능데이터 모델링  (0) 2023.10.28
SQL - 속성  (1) 2023.10.28