데이터베이스 - 데이터베이스의 기본

BinaryWoo_dev·2023년 12월 10일
0

CS

목록 보기
6/6
post-thumbnail

서론


이번 포스팅에서는 데이터베이스의 기본적인 용어들에 대한 기본 개념을 알아볼 것이다.

요약

  • 엔티티
  • 릴레이션
  • 속성
  • 도메인
  • 필드와 레코드
  • 관계

본론


🔎 엔티티

엔티티(entity)란 여러 개의 속성을 지닌 명사 이다.
예를 들어, 아이디, 이름, 이메일, 연락처 4개의 속성을 지니고 있는 회원 이라는 객체 데이터가 존재할 때, 여기서 엔티티는 "회원"이라고 할 수 있다.

약한 엔티티와 강한 엔티티

만약 A,B 두 개의 엔티티가 존재한다고 가정한다.
엔티티 A는 엔티티 B의 존재 여부에 따라 종속적일 경우, A약한 엔티티 라고 할 수 있다. 그에 반해, A의 존재 여부에 상관 없이 독립적으로 존재할 수 있는 B강한 엔티티 라고 할 수 있겠다.

🔎 릴레이션

릴레이션(relation) 은 DB에서 정보를 구분하여 저장하는 기본 단위 이다.

데이터베이스는 여러 릴레이션들로 구성되고, 릴레이션은 여러 엔티티로 구성된다.

DB 종류에 따른 릴레이션 명칭

관계형 데이터베이스 관리 시스템(DBRMS) : 테이블
비관계형 데이터베이스 관리시스템(NoSQL) : 컬렉션

속성 🔎

속성은 릴레이션에서 관리하는 구체적이며 고유한 이름을 갖는 데이터이다.

도메인 🔎


도메인은 속성에 대해 할당될 수 있는 데이터(value)의 집합 라고 할 수 있다.

필드와 레코드🔎

필드 란 릴레이션(테이블 or 컬렉션) 에서 각 속성에 대한 label 즉, Column header 으로 정의할 수 있다.

레코드 는 릴레이션에서 Row 단위를 뜻하며, 튜플(Tuple) 이라고도 부른다.

관계🔎

데이터베이스에는 릴레이션은 1개만 있는 것이 아니기 때문에, 여러 테이블 간의 관계들로 연결되어 있다.

  • 1:1
  • 1:N
  • N:M

1:1 관계

예를 들어, 사용자 당 사용자 이메일은 1개이다. 이런 경우 1:1 관계라고 할 수 있다.

1:N 관계

예를 들어, 쇼핑몰이 있을 때 고객은 장바구니에 상품을 아무것도 담지 않을 수도 있고 여러 개를 담을 수도 있다.
이러한 상황처럼 한 개체가 다른 많은 개체를 포함하는 관계를 의미한다.

N:M 관계

예를 들어, 학생과 강의의 관계를 정의한다고 했을 때 학생도 강의를 여러 개 들을 수 있고 각 강의도 여러 학생을 포함할 수 있을 것이다. 이러한 경우를 N:M 관계라고 한다.

키🔎

테이블 간의 관계를 조금 더 명확하게 하고 테이블 자체의 인덱스를 위해 설정된 장치로 기본키, 후보키, 슈퍼키, 대체키 등이 있다.

💡 유일성과 최소성이란?

유일성 : 중복되지 않고 고유한 값을 가지는 특성
최소성 : 필드를 조합하지 않고 최소 필드만 사용하여 키를 형성할 수 있는 특성

기본키

기본키(Primary Key)는 약어로 PK 라고도 부르며, 유일성, 최소성을 만족하는 키이다.
따라서, 기본키의 데이터는 중복적으로 존재할 수 없다.

외래키

외래키(Foreign Key)는 FK라고도 부르며, 다른 테이블의 기본키를 그대로 참조(Reference) 하는 값으로 개체와의 관계를 식별하는데 사용된다.
외래키는 중복이 허용된다.

후보키

기본키가 될 수 있는 후보들이며, 유일성, 최소성을 동시에 만족하는 키이다.

대체키

후보키가 두 개 이상일 경우 어느 하나를 기본키로 지정하고 남은 후보키이다.

profile
매일 0.1%씩 성장하는 Junior Web Front-end Developer 💻🔥

0개의 댓글