IT수업/데이터베이스

it 수업 6주차 (9) ER다이어그램으로 리버싱하기

워제하 2024. 1. 29. 13:32

 

draw.io 로 만든 다이어그램을 만들어 볼 것이다.

 

 

먼저 학생 테이블이다.

 

그리고 강의 테이블이다.

 

 

강의 테이블과 학생테이블은 다대다의 관계로 묶여 있으므로 중간에 수강신청 테이블을 넣어 연결해 줄 것이다.

 

이렇게 설정을 한 뒤 foreign key로 가서 외래키를 설정해 준다.

 

외래키를 설정 할 때는 foreign key option을 CASCADE로 해주고

 

외래키의 이름은 'fk_외래키가 포함된 테이블_기본키가 포함된 테이블'로 해주면 된다.

그래서 registration테이블에 lecture테이블의 기본키를 가져오려면

'fk_registration_lecture_id'해주면 된다.

강의 테이블의 기본키를 외래키로 설정
학생 테이블의 기본키를 외래키로 설정

 

 

다음은 강사 테이블과 강의 테이블을 연결 해줄 것이다.

먼저 강사 테이블을 만든다.

 

 

그리고 강의테이블과 다대다연결이 되어 있어 중간에 진행수업 테이블을 만들어 연결해 줄 것이다.

 

위와 똑같이 외래키를 설정해준다.

강의테이블의 기본키를 외래키로
강사테이블의 기본키를 외래키로

 

 

 

 

연결해주었으면 이제는 강의테이블과 진행수업테이블을 강의장테이블로 연결시켜 줄 것이다.

먼저 강의장 테이블을 만들어준다.

 

그리고 외래키로 연결해준다.

강의장 테이블의 기본키를 외래키로

 

강의장테이블의 기본키를 외래키로

이때 진행수업테이블에는 강의장테이블의 기본키가 기본키이자 외래키로 들어 왔으므로 primary key도 설정해준다.

 

이제 book테이블도 만들어 준다.

 

 

 

 

만들어진 테이블들을 이제 erd로 구현 해볼 것이다.

 

 

workbench로 가서 상단의 database를 클릭해 reverse engineer...를 클릭해준다.

 

root로 접속해준다.

 

만들어진 테이블들의 데이터베이스명이 lmsdb2 이므로 이 db를 선택한다.

 

계속 next를 눌러주면 이렇게 ERD이 만들어진 것을 볼 수 있다.