TOP
class="layout-aside-left paging-number">
본문 바로가기
자격증/SQLD

2과목 SQL 기본 및 활용 - 관계형 데이터베이스 개요

by 기록자_Recordian 2024. 1. 8.
728x90
반응형

SQLD 2과목 SQL 기본 및 활용

<목차>

 

1. 관계형 데이터베이스 개요

A. 데이터베이스

넓은 의미로는 일상적인 정보들을 모아 놓은 것 자체.

그러나 일반적으로는 특정 기업이나 조직 또는 개인이 필요에 의해 데이터를 일정한 형태로 저장해 놓은 것.

 

ex) 학교: 학생 관리를 목적으로 학생 개개인의 정보 저장

기업: 직원들을 관리하기 위해 직원들의 정보 저장 (주로 엑셀)

 

관리 대상이 되는 데이터의 양이 점점 많아지고 같은 데이터를 여러 사람이 동시에 여러 용도로 사용하게 되면서 엑셀로는 한계가 있고, 경우에 따라서는 개인의 사소한 부주의로 인해 중요한 데이터가 손상되거나 유실될 우려 있음.

▶ 보다 효율적인 데이터의 관리 뿐만 아니라 데이터 손상을 피하고, 필요시 복구하기 위한 시스템 필요 (DBMS)


B. 관계형 데이터베이스

  • 현재 기업에서 사용하고 있는 대부분의 데이터베이스는 기존 관계형 데이터베이스에 객체 지원 기능을 추가한 객체 관계형 데이터베이스 사용.
  • 기업의 핵심데이터는 대부분 관계형 데이터베이스 구조로 저장이 되고, SQL 문장에 의해 조작되고 관리되고 있음.
  • 파일시스템은 하나의 파일을 많은 사용자가 동시에 검색할 수 있으나 동시에 입력, 수정 ,삭제할 수 없기 때문에 정보의 관리가 아려움. > 하나의 파일을 여러 명이 동시에 사용하기 위해 파일을 여러개 복사하여 여러 곳에 저장되는 문제 발생. / 하나의 원본 파일에 대한 변경 작업이 발생했을 때 모든 복사본 파일에 대한 변경 작업 처리가 병행되지 않으면 데이터의 불일치성 발생. 

▶  관계형 데이터베이스는 정규화를 통한 합리적인 테이블 모델링을 통해 이상 현상을 제거하고 데이터 중복을 피하고, 동시성 관리, 병행 제어를 통해 많은 사용자들이 동시에 데이터를 공유 및 조작할 수 있는 기능 제공.

▶  메타 데이터를 총괄 관리할 수 있기 때문에 데이터의 성격, 속성 또는 표현 방법 등의 체계화 가능

▶  데이터 표준화를 통한 데이터 품질 확보

▶  인증된 사용자만이 참조할 수 있도록 보안 기능 제공

▶  사용자가 실수로 조건에 위배되는 데이터를 입력한다든지, 관계를 연결하는 중요 데이터를 삭제하는 것을 방지하여 데이터 무결성 보장

▶  시스템의 갑작스런 장애로부터 사용자 입력, 수정, 삭제 데이터가 제대로 반영될 수 있도록 보장해주는 기능과, 시스템 다운, 재해 등의 상황에서도 데이터를 회복/복구할 수 있는 기능 제공

 

C. SQL(Structured Query Language)


  • SQL: 관계형 데이터베이스에서 데이터 정의, 데이터 조작, 데이터 제어를 하기 위해 사용하는 언어
  • 관계형 데이터베이스에 대한 전담 접속 용도로 사용되며 독립되어 있음.
  • 데이터를 집합으로써 취급.
명령어의 종류 명령어 설명
데이터 조작어
(DML)
SELECT 데이터베이스에 들어 있는 데이터를 조회하거나 검색하기 위한 명령어
INSERT
UPDATE
DELETE
데이터베이스의 테이블에 들어 있는 데이터에 변형을 가하는 종류의 명령어
(삽입, 수정, 삭제)
데이터 정의어
(DDL)
CREATE
ALTER
DROP
RENAME
테이블과 같은 데이터 구조를 정의하는데 사용되는 명령어
(구조 생성, 변경, 삭제, 이름 변경)
데이터 제어어
(DCL)
GRANT
REVOKE
데이터베이스에 접근하고 객체들을 사용하도록 권한을 주고 회수하는 명령어
트랜잭션 제어어
(TCL)
COMMIT
ROLLBACK
논리적인 작업의 단위를 묶어서 DML에 의해 조작된 결과를 작업단위(트랜잭션) 별로 제어하는 명령어

 

D. TABLE


  • 어느 특정한 주제와 목적으로 만들어지는 일종의 집합
  • 테이블에는 등록된 자료들이 있으며, 이 자료들은 삭제하지 않는 한 지속적으로 유지.
  • 데이터를 저장하는 객체로서 관계형 데이터베이스의 기본 단위.
  • 모든 데이터를 칼럼과 행의 2차원 구조로 나타냄.
  • 세로방향 - 칼럼(Column) / 가로방향 - 행(Row) / 필드: 칼럼과 행이 겹치는 하나의 공간
용어 설명
테이블 행과 칼럼의 2차원 구조를 가진 데이터의 저장 장소이며, 데이터베이스의 가장 기본적인 개념
칼럼/열 2차원 구조를 가진 테이블에서 세로 방향으로 이루어진 하나하나의 특정 속성 (더이상 나눌 수 없음)
2차원 구조를 가진 테이블에서 가로 방향으로 이루어진 연결된 데이터

 

용어 설명
정규화 테이블을 분할하여 데이터의 정합성을 확보하고, 불필요한 중복을 줄이는 프로세스
기본키(PK) 테이블에 존재하는 각 행을 한 가지 의미로 특정할 수 있는 한 개 이상의 칼럼
외래키(FK) 다른 테이블의 기본키로 사용되고 있는 관계를 연결하는 칼럼

 

E. ERD (Entity Relationship Diagram)


  • 테이블 간 서로의 상관 관계를 그림으로 도식화한 것
  • 구성요소: 엔터티, 관계, 속성

출처: 데이터 자격검정

 

 

이전글

데이터 모델과 SQL - 본질식별자 vs 인조식별자

 

다음글

SELECT 문

728x90
반응형