SQLD 노랭이 문제풀이 1~10 [어쩌다DBA]


해당 내용은 SQLD 노랭이 문제풀이 1~10 [어쩌다DBA]을 기반으로 작성되었습니다.


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

-> GRANT(권한 제공), REVOKE(권한 회수)

 

DB에는 많은 테이블이 있다. 사람이 테이블을 조회, 삽입, 삭제, 업데이트를 하기 위해서 관리자에게 접근 제어할 수 있도록 해줘야하는데 그게 DCL (Data Control Language)이다.

 

트랜잭션 : DB의 상태를 변화시키기위한 작업 단위

 

2. 아래 내용의 범주에 해당하는 SQL 명령어로 옳지 않은 것은?

① CREATE

② GRANT

③ ALTER

④ DROP

-> 나머지 DDL이고, GRANT만 DCL이다. 

 

3. 다음 내용에 해당하는 SQL 명령어의 종류를 작성하시오

논리적인 작업의 단위를 묶어 DML에 의해 조작된 결과를 작업단위(Transaction) 별로 제어하는 명령어인 COMMIT, ROLLBACK, SAVEPOINT 등이 여기에 해당하며, 일부 DCL로 분류하기도 한다.

-> TCL

 

4. 데이터 언어와 SQL 명령어에 대한 설명으로 가장 부적절한 것은?

DML (SELECT, INSERT, UPDATE, DELETE)

     - 사용자가 무슨 데이터를 원하는지 (ㅇ) 어떻게 그것을 접근해야되는지를 명세하는 언어( x )

데이터 부속어 : 호스트 프로그램 속에 삽입되어 사용되느 DML명령어들

 

5. SQL명령어 짝짓기

DML(데이터 변경) DDL (테이블 변경) DCL (제어 권한 여부) TCL (과거 이력)
- SELECT
- UPDATE
- INSERT
- DELETE
- ALTER
- DROP
- RENAME
- CREATE
- GRANT
- REVOKE
- COMMIT
- ROLLBACK

 

6. 데이터를 변경할때 올바른 SQL 문장은?

 

기관분류 테이블

분류명 VARCHAR(10) NOT NULL
등록일자 VARCHAR(10) NULL
-> 분류명 VARCHAR(30) NOT NULL
등록일자 DATE NOT NULL
# SQL Server
ALTER TABLE 기관분류 ALTER COLUMN 분류명 VAHRCHAR(3O) NOT NULL;
ALTER TABLE 기관분류 ALTER COLUMN 등록일자 DATE NOT NULL;

# ORACLE
ALTER TABLE 기관분류 MODIFY 분류명 VARCHAR(30) NOT NULL;
ALTER TABLE 기관분류 MODIFY 등록일자 DATE NOT NULL;

-> SQL server 에서는 ( 괄호 )를 사용하지 않음

7. NULL

- 모르는 값 (ㅇ)

- 값의 부재 (ㅇ)

- 공백 문자 혹은 숫자 0을 의미한다. ( x )

NULL + NULL = NULL
NULL +     1    = NULL
NULL *      3    = NULL

NULL과의 모든 비교(IS NULL제외)는 알 수 없음(Unknown)을 반환한다 (ㅇ)

 

8. 제약조건에 대한 설명

- UNIQUE : 테이블 내에서 중복되는 값 x, NULL입력 ㅇ

- PK : 주 키로 테이블 당 1개만 생성 가능, NULL 입력 x, 중복 값 x

- FK : 외래키로 테이블당 여러 개 생성이 가능, 중복 값 가능

- NOT NULL : 명시적으로 NULL 입력을 방지한다. 

'자격증 > SQLD' 카테고리의 다른 글

SQLD 최종 정리 강의 [김강민SQLP]  (1) 2024.05.24