Notice
Recent Posts
Recent Comments
Link
관리 메뉴

뛰는 놈 위에 나는 공대생

[SQL] Database 본문

프로그래밍 Programming

[SQL] Database

보통의공대생 2021. 3. 29. 15:32

데이터 단위

 

bit - byte - field - record - file - database

 

Problems with the Tradition

 

 

각 부서마다 다른 application program을 가지고 그 프로그램 안에서 데이터를 다루고 있다.

그러나 각 부서마다 겹치는 데이터가 있음에도 각자 가지고 있어 data redundancy가 발생한다.

또한 데이터가 변경되었는데 다른 곳에서는 업데이트 되지 않아 일관되지 않은 데이터가 존재할 수 있다.

또한 데이터에 접근하는 프로그램이 각자 다르기 때문에 프로그램을 바꾸고 싶을 때 프로그램에 저장된 파일을 모두 변환해줘야 다른 프로그램에서 쓸 수 있다.

 

그 외에도 lack of flexbility, poor security, lack of data sharing and availability 문제가 있다.

 

 

Database Management Systems

 

데이터베이스 : 다양한 어플리케이션을 사용해 데이터를 중앙집중화하고, redundant data를 관리하는 것

 

 

  • DBMS(Database management system) : 어플리케이션과 데이터 사이에서 관리해주는 소프트웨어
  • logical views of data : end users 및 비즈니스 전문가들이 보는 데이터
  • physical views of data : 실제 storage에 저장되는 데이터

 

 

전체 데이터 중에 필요한 데이터만 database management system을 통해서 받아올 수 있다.

 

Ralational DBMS : 회사에서 가장 많이 쓰이는 DBMS. 데이터가 Table에 저장되어 있고 table마다 key가 있다. 각 table에도 연관성이 있다.

 

Relational DBMS Tables

 

 

위의 table은 supplier (공급자)에 대한 데이터 베이스다.

 

 

foreign key는 다른 table의 primary key를 가져온 것이다.

 

Operations of a Relational DBMS

  • SELECT : 조건에 맞는 데이터의 subset을 만드는 것 (row 기준)
  • JOIN : 여러 relational table을 합치는 것
  • PROJECT : table에서 필요한 column을 가져오는 것

 

 

Database design

 

E/R Diagrams, UML, IDEF1x 등 : 데이터의 관계를 나타내기 위한 표현들

 

E/R Diagram을 살펴보면 나머지 표현들도 쉽게 이해할 수 있다.

 

기본적인 형태는 다음과 같다.

 

 

Cardinalities

(영어) The property of possessing a cardinal number

 

 

표식

 

Minimum cardinality based : Mandatory, Optional

 

Maximum cardinality based

1:1 대응

M:N 대응

1:M 대응

 

 

몇 가지 예시

 

 

 

 

Chen E/R Diagram Notation

 

Comments