정보처리산업기사 2019년 10월 실기 기출문제 (복원)
데이터 언어는 데이터베이스를 구축하고 이용하기 위한 데이터베이스 관리 시스템과의 통신 수단이다. 데이터 언어는 데이터베이스의 구조를 정의 및 변경하는 DDL, 데이터를 조작하는 DML, 보안 및 무결성, 병행제어 등을 위한 DCL로 구분된다. 다음 <보기>에서 DDL과 DML에 속하는 명령어들을 골라 적으시오. (5점)
Commit,  Table,  Insert,  Domain,  Update,  Query,  Create,  Trigger,  Alter,
Rollback,  Procedure,  Drop,  Select,  Grant,  Delete,  Revoke,  View

 

 

 

 

 

 

 

 

<정답>

DDL : Create, Alter, Drop

DML : Select, Update, Insert, Delete

*DCL은 없으며, 다른 단어들은 모두 데이터 언어가 아닙니다.

 

 

DDL(Data Definition Language), 데이터 정의 언어

: 컴퓨터 사용자 또는 응용 프로그램 소프트웨어가 컴퓨터의 데이터를 정의하는 언어이다.

: *나만의 표현 - 릴레이션(테이블) 단위로 데이터베이스를 다루는 언어!

 

SQL의 데이터 정의 언어(DDL)로는,

  > CREATE - 새로운 릴레이션, View, INDEX, 저장 프로시저 생성

  > DROP - 이미 존재하는 릴레이션, View, INDEX, 저장 프로시저 제거

  > ALTER - 이미 존재하는 릴레이션, View 등에 대한 변경

  > TRUNCATE - 릴레이션에서 데이터를 돌이킬 수 없는 제거

 

*DELETE 와 TRUNCATE 의 차이점
DELETE TRUNCATE
데이터만 삭제괴도, 용량은 그대로 유지 테이블을 초기상태로 되돌린다.(테이블 통째로 삭제)
삭제한 내용을 되돌릴 수 있다.(복구 O) 용량이 줄어들고, 인덱스, PK 등의 설정이 삭제된다.
전체 or 일부 데이터를 선택하여 삭제할 수 있다. 전체 삭제만 가능하다.
TRUNCATE 명령어에 비해 속도가 느리다. 삭제 후 복구가 불가능하다.

 

 


DML(Data Manipulation Language), 데이터 조작 언어

: 데이터베이스 사용자 또는 응용 프로그램 소프트웨어가 컴퓨터 데이터베이스에 대해 검색, 등록, 삭제, 갱신을 위한 데이터베이스 언어이다. 2007년 현재 가장 대중적인 데이터 조작 언어는 SQL이다.

: *나만의 표현 - 레코드(튜플) 단위로 데이터베이스를 다루는 언어!

 

SQL의 데이터 조작 언어(DML)로는,

  > SELECT - 검색, 질의

  > INSERT - 삽입, 등록

  > UPDATE - 업데이트, 수정

  > DELETE - 삭제

 

 


DCL(Data Control Language), 데이터 제어 언어

: 데이터베이스에서 데이터에 대한 액세스를 제어하기 위한 데이터베이스 언어이다.

: 여러 데이터베이스 사용자들의 SQL 사용권한을 부여하고 박탈할 수 있따.

: *나만의 표현 - 보안 관련, DB 자체를 책임지는 언어!

 

SQL의 데이터 제어 언어(DCL)로는 구문 / 권한 두 파트로 나눈다.

[ 구문 ]

  > GRANT - 특정 데이터베이스 사용자에게 특정 작업의 수행 권한을 부여한다.

  > REVOKE - 특정 데이터베이스 사용자에게 부여한 권한을 박탈한다.

 

[ 권한 ]

  > CONNECT - 데이터베이스 또는 스키마에 연결하는 권한

  > SELECT/INSERT/UPDATE/DELET - DML의 사용 권한

  > USAGE - 스키마 또는 함수와 같은 데이터베이스 개체를 사용할 수 있는 권한

 

 

 

 

 

| 글이 도움이 되었다면 공감❤️ 부탁드립니다.
| 질문, 토론, 그저 그런 이야기 모두 댓글 환영해요. :D
| Instargram @00_minwooky