데이터 베이스라는 집합을 만들고 데이터들을 관리할 수 있는 응용프로그램
데이터들을 "저장", "관리", "공유"등을 도와준다.
관계형 데이터 모델에 기초를 둔 데이터 베이스이다.
모든 데이터를 2차원 테이블 형태로 표현 가능하다.
RDB를 생성하고 수정하고 관리할 수 있는 소프트웨어이다.
RDBMS의 테이블은 서로 연관성을 가지고 있어 DBMS 보다 효율적으로 구성, 저장, 관리가 가능하다.
Ex) MySQL , MSSQL , ORACLE
현실세계 -- 데이터가 뒤죽박죽 정리되어 있지 않은 상태
컴퓨터세계 -- 단순화, 추상화, 명확화된 데이터가 필요
학생: "가" "나" "다"
과목: "A" "B" "C" 라고 가정하고 모든 학생이 모든과목을 다 듣는다고 치면
학생 - 수업 테이블엔
가-A, 가-B, 가-C, 나-A, 나-B, 나-C, 다-A, 다-B, 다-C가 저장이 된다.
학생-수업 테이블에서 위같은 데이터들을 구분하기 위해서는 추가의 PK설정이 필요하다.
구체적인 내용구성에 앞서 Beverage(Main Table) 중심으로 파생되는 테이블들의 관계(PK, FK)를 먼저 잡아주었다.
beverage-allergy 테이블이 앞서 Pre에서 언급해준
beverage와 allergy의 다대다 관계를 해결해주기 위해 설정된 연결테이블(매핑 테이블)이다.