1. 릴레이션
구체적인 SQL 명령어 대해 알아보기 전에,
배경지식으로 알아야할 용어를 정리해보자.
먼저 아래 <학생>표는 관계형 데이터 베이스에 예시이다.
관계형 데이터 베이스는 개체(Entiny)와 속성(Attribute)을
2차원적인 표(Table)를 이용해서 데이터 상호 관계를 정의한다.
이때 Table를 릴레이션(Relation)이라 부른다.
<학생>
학번 | 학년 | 이름 | 성별 |
19901 | 2 | 김예소 | 여 |
20002 | 1 | 고강민 | 남 |
19012 | 2 | 이향기 | 여 |
17032 | 4 | 김동준 | 남 |
- 개체(Entiny) : 데이터 베이스의 Table을 말하며, 독립적으로 존재한다. 위를 예시로 <학생>표가 하나의 개체이다.
- 속성(Attribute) : 데이터 베이스를 구성하는 가장 작은 논리 단위. 위를 예시로 '학번', '학년', '이름', '성별'이 해당된다.
- 관계 (Relation) : 개체와 개체 사이의 연관성을 말한다. 만약 <교수진>이라는 표가 있다면 두 개체 사이의 연관성을 뜻한다.
2. 스키마
아래는 스키마에 대한 정의를 찾아보면 나오는 뜻이다.
스키마는
데이터베이스의 구조와 제약 조건에 관한 전반적인 명세를 기술한
메타데이터의 집합이다.
하지만 직접적으로 와닿지않아 정확히 어떤 의미인지 이해되지않았다.
먼저 단어의 뜻과 어원을 알아보자.
Schema를 번역하면 개요라고 나오며
간결하게 추려낸 내용이라 할 수 있다.
그리스어 'schēmat-'에서 유래되었으며
'모양, 사물의 본질'을 의미하는 'schēma'의 어간이다.
여기까지 살펴보았을 때, 단어 자체가 가지고 있는 뜻을 이해할 수 있었다.
스키마는 해당 사물에 대한 주요 구조나 내용을 의미한다.
그렇다면 데이터베이스에서 스키마는 어떤 의미일까?
다시 아래의 표를 예시로 확인해보자.
릴레이션 스키마는 구조를 나타내는 '학번', '학년', '이름', '성별'인 릴레이션의 속성이 해당된다.
그 밑으로는 실제 값들이 릴레이션에 인스턴스가 해당된다.
따라서 스키마는
개체의 특성인 속성(Attribute)과,
속성들의 집합으로 이루어진 개체(Entity),
개체 사이에 존재하는 관계(Relation)에 대한
정의와 이들이 유지해야 할 제약 조건을 기술한 것이다.
+ 추가
추가적으로 정보처리 산기나 기사 시험에서 자주 나오는 개념을 정리해보자.
카디널리티 또는 디그리를 묻는 문제가 자주 출제 되기때문에
2가지 개념을 잘 이해하고 구분해야한다.
- 튜플(Tuple) : 릴레이션을 구성하는 각각의 행을 말한다.
- 카디널리티(Cardinality) : 튜플의 수를 뜻하며 기수 또는 대응수라고 한다.
- 디그리(Degree) : 릴레이션을 구성한는 열을 의미하며 속성의 수를 뜻한다. 차수라고도 불린다.
'자격증 > SQL' 카테고리의 다른 글
[데이터베이스 기초] DB와 DBMS (1) | 2023.12.18 |
---|