오래 못 할 짓 하지 않기

[ DB ] 1. R - DBMS 본문

3학년 1학기/데이터베이스(DB)

[ DB ] 1. R - DBMS

쫑알bot 2024. 3. 7. 01:06
728x90

DBMS

: DataBase Management System

 

● 목적

 - 데이터 정의 및 생성

 - 쿼리 날리기

 - 정보 업데이트 및 관리

 

● Software는 Application이 DB에 정보를 저장하고 분석할 수 있게 도와준다.

  ( File I/O 단계의 세부적인 건 고려하지 않고 접근 가능 )  

 

 

 2가지 Interface가 있다.

 

- DDL : Data Definition Language 

- DML : Data Manipulation Language 

 

▶  SQL : Structured query language 는 DDL과 DML에서 다 쓰인다.

 

 


 

Data Model

 

: 정보에 대한 설명을 담고있는 객체(?)

 

주로 DBMS들이라서 우리는 이 과목에서 이걸 배움

 

● 구성요소 3가지

 - Structure

 - Operations

 - Constraints

 

 

ex) 밑에 다 이해할 필요는 없고 Data model이 이렇게 다르다 정도 알고 있으면 됨

[ No SQL ]

- Key / value

- Graph

- Document

- Column - family

 

[ Machine Learning ]

- Array / Matrix

 

 


Relational data model

 

Relation = Table이라고 생각하면 됨

 

하나의 Entity에 있는 요소들의 관계가 UnOrdered 일 때

 

● Attribute ( Column = 행 )

 : 더 이상 나누어지지 않는 단위어야 한다.

 

 * NULL은 모든 Member의 domain이고, 정확하게는 Unknown을 가리킨다. 

   (공집합은 모든 집합의 부분집합)

 

 

● Tuple ( Row = 열 )

 : Attribute의 집합

 

- 각각의 attribute값들을 하나씩 다 가지고 있다.

 

 

 

4개의 Attribute가 있다.

Attribute = ID / Name / dept_name / salary

 

Header =  Attribute가 있는 row = Schema

 

 

Tuple의 순서는 아무 상관없다.

 


 

Notation에 대해

 

 


 

Key

● Primary Key

 

: 하나의 튜플을 고유하게 식별하는 Key

 ▶ 주로 밑줄이 그어져있다.

 

 

 

 

● Foreign Key

 

: 다른 Table에 있는 Attribute를 Map할 때 쓰이는 Key

 

 

 


Data Language

 

● Data Definition Language

   데이터를 어떻게 표현할지

  ▶ DB Scemas 를 위한 Language

 

 

● Data Manipulation Language

   데이터를 DB에서 어떻게 저장하고 가공할지

  ▶ Query랑 관련되어있음

 

 

 

 

출처 : 한동대학교 홍참길 교수님 - 데이터베이스