Database - 데이터베이스 설계 실습

Bomin Seo·2022년 7월 25일
0

논리적 설계


EMPLOYEE(Empno, Name, Address, Title)

EMPLOYEE(Emp-id, Salary, Name)
DEPARTMENT(Dept-no, Name, Location)
MANAGES([FK]Dept-no, [FK]Emp-id, Start)


STUDENT(SID, DEPT, SNAME)
COURSE(CID, CNAME, CREDIT)
ENROLLED(SID[FK], CID[FK], GRADE)


R1(A, C)
R2(A, B, D[FK])
R3(D, E, F)
R4(G, A[FK], B[FK])


STUDENT(SID, Name, Email, Phone, street, City, State, Zip)


STUDENT(SSN, Name, Email, JoiningDate, DeptName[FK])
DEPARTMENT(DeptName, Address, Phone)


EMPLOYEE(EID, Name, Dept, Designation)
PROJECT(PID, Name, Location, Duration)
Assignment(PID[FK], EID[FK], Date)


PARTICIPANT(ParticipartID, Name, Address)
TOURNAMENT(TournamentID, Name, Location, NoTimePrYear)
COURT(CourtID, CourtType, Capacity)
Match(ParticipartID[FK], TournamentID[FK], CourtID[FK], Time, Date)


PATIENT(PatientID, Name, Address)
PET(PatientID[FK], PetName, BirthDate)

EMPLOYEE(EMPNO, EMPNAME, ADDRESS)
EMP_SKILL(EMPNO[FK],SKILL)

ER 다이어그램

작은 도시에 위치한 소규모 신문사에서 각종 사진과 기사들을 관리하기 위해서 데이터베이스 시스템을 설치하려고 결정하였다. 데이터베이스에 어떤 정보를 저장할 것인가에 관한 요구사항이 아래와 같다.

  • 사진은 고유한 번호와 촬영한 날짜, 사진의 가로와 세로 크기를 갖는다.
  • 신문사 소속 사진사가 찍은 사진과 외부에서 구입한 사진들을 구분하려고 한다. 신문사 소속 사진사가 찍은 사진에 대해서는 사진사의 이름을 나타내고, 외부에서 구입한 사진에 대해서는 구입처와 사진의 가격을 나타내려고 한다.
  • 기사 또는 사진에 등장하는 인물에 대한 정보를 별도로 저장하려 한다. 인물에 대해서 이름, 생년월일, 영역(정치,경제, 사회, 스포츠 등)을 저장한다.
  • 사진마다 그 사진에 어떤 사람들이 등장하는가를 저장한다.
  • 기사마다 기사의 제목, 기사 작성자의 이름(들), 기사가 등장한 신문의 발간호를 저장한다. 또한 각 기사에 대해서 그 기사에 어떤 인물들이 등장했는지, 그 기사에 어떤 사진들이 포함되었는가를 나타내려 한다. 이와 같은 요구사항들을 바탕으로 다음과 같은 작업들을 수행하라

(1) 위의 요구사항들을 ER 다이어 그램으로 그려라. 기본 키 애트리뷰트뿐만 아니라 관계
타입들의 카디날리티 제약조건들도 ER 다이어그램에 나타내라.
(2) ER 다이어그램에 나타내지 못한 무결성 제약조건이 있으면 자연어로 서술하라.
(3) (1)에서 작성한 ER다이어그램을 관계 데이터베이스 스키마로 변환하라. 기본 키와 외래
키 애트리뷰트들을 모두 명시하라.


정보통신 교육센터에 50명의 강사가 속해 있다. 각 과정마다 100명의 수강생이 참여할 수 있다. 교육센터의 운영을 ER 다이어그램으로 표현 하려고 한다. 교육센터 자체를 엔티티로 모델링하지는 말아야 한다. 교육센터 내의 엔티티들과 이들 간의 관계만 모델링하라.

  • 교육 센터는 다수의 고급 과정을 개설하는데, 각 과정은 두 명 이상의 강사들이 팀으로 맡는다.
  • 각 강사는 최대 두 개의 과정을 맡거나 강의 준비 임무를 부여받는다.
  • 각 수강생은 교육 기간 동안 하나의 고급과정을 이수한다

극장 연합회에서는 영화와 관객들에 관한 통계를 수집하여 아래와 같은 사항들을 데이터베이스에 저장하고자 한다.

  • 영화: 각 영화마다 고유한 번호, 이름, 제작 연도, 제작 국가를 저장한다.
  • 극장: 각 극장은 하나 이상의 스크린을 보유한다. 각 스크린마다 해당 극장 내에서 고유한 번호와 이름을 갖는다. 이와 같은 스크린에 관한 정보를 저장한다.
  • 상영: 영화는 여러 스크린에서 상영된다. 언제 어떤 스크린에서 어떤 영화가 상영되었으며 얼마나 많은 관객이 관람했는가에 관한 정보를 저장한다.

(1) 이런 요구사항에 대하여 ER 다이어그램을 그려라. ER 다이어그램을 그리기 위해 추가로 가정한 것이 있으면 이를 설명하라. ER 다이어그램은 여러 가지 형태로 그릴 수 있다. 자신이 그린 ER 다이어그램의 표기법을 설명하라.

(2) (1)에서 작성한 ER 다이어그램을 릴레이션들로 사상하라. 릴레이션들의 스키마에서 어느 애트리뷰트가 기본키인지 표시하라.

profile
KHU, SWCON

0개의 댓글