[TIL] Database

나른한 개발자·2022년 1월 4일
0

studylog

목록 보기
18/45

Database

컴퓨터 시스템에 저장된 정보나 데이터를 모두 모아놓은 집합.

사용 목적

  • 데이터 보존 및 유지 - Database는 메모리 사용해 저장하는 것이 아니기 때문에 데이터를 오래 보존 가능.
  • 체계적으로 보존 및 관리 - 자료를 원하는 방식으로 정리할 수 있고 쉽게 찾을 수 있음

DBMS(Database Management System)

  • 데이터베이스를 조작하는 소프트웨어. 데이터베이스를 구축하는 틀 제공하고, 데이터를 검색 및 관리하는 기능을 포함한다.

관계형 데이터 베이스 RDBMS

데이터들이 2차원 테이블로 표현되며 테이블 간 관계를 표현할 수 있는 DBMS.

  • 열 Column: 각 테이블의 항목
  • 행 Row: 항목들의 실제 값. 각각의 row는 고유한 키 값 (Primary Key)을 가지고 있다.

RDBMS의 특징

  • 데이터 분류, 탐색, 정렬 속도가 빠르다.
  • 스키마를 수정하기 어렵다.
  • 데이터베이스의 부하를 측정하기 어렵다.

primary key와 foreign key

  • primary key: 각 행은 고유의 키를 갖으며 데이터가 중복되어도 키 값은 중복되면 안된다.
  • foreign key: 참조하는 테이블의 primary key이다.

관계

  • 일대일 관계 (one-to-one) : 하나의 a 테이블 데이터는 오로지 b 테이블과 연결된다. 모델링에서는 1 대 다로 표현하고 대신 더 종속적인 곳에 다른 테이블의 id를 외래키로 갖는다. 보통 일대일 관계인 경우 하나의 테이블에 다 표현하는 것이 일반적이다.

  • 일대다 관계 (one-to-many): 하나의 a 테이블 데이터는 b 테이블의 여러개 데이터와 연결된다. foreing key는 '다' 테이블에 포함되어 있다.

  • 다대다 관계 (many-to-many): a 테이블 데이터는 b 테이블의 여러개 데이터와 관계 맺을 수 있다. 반대도 마찬가지. 서로 각자 다른 테이블이 관계를 맺을 때 관계를 표현하기 위한 중간 테이블이 생성된다. 중간 테이블은 외래키로만 구성되어 있고, 양 테이블에 대해 원-투매니 관계를 가짐.

profile
Start fast to fail fast

0개의 댓글