TIL/SQL

[알고리즘] SQL | 20230217 Exerd 관계설정

yeoney 2023. 2. 17. 13:24
반응형

https://sodayeong.tistory.com/106

 

[SQL] 정규화(Normalization)와 반정규화(De-Normalization)

정규화란? 정규화는 데이터의 일관성, 최소한의 데이터 중복, 최소한의 데이터 유연성을 위한 방법이며 데이터를 분해하는 과정이다. 정규화된 모델은 테이블이 분해된다. 테이블이 분해되면

sodayeong.tistory.com

최고의 자료,,,

 

 

간단히 보면

제 1정규화: 기본적인 정규화만 시켜놓은 테이블   ( 중복값 제거)

제 2정규화: 부분함수 종속성을 분해한거 

제 3정규화:  종속관계가 성립하도록 만든 테이블

 


1.이클립스에 들어간다

2. 돋보기 옆에 누르면 

3.Exerd를 실행한다.

++))) 근데 exerd가 없으면

HELP >  INSTALL NEW SOFTWARE > Exerd 다운로드

하고 실행 고고고~ 

https://catchdream.tistory.com/125

 

[데이터베이스 모델링] exERD 설치

* 현재 exERD 를 사용하고 있는 팀원이 있으면, 자신의 exERD Version 을 무조건 확인하자! 필자는 아무 생각없이 최신 모델인 3.X 버전을 다운받고, 사용하고 있었는데, 다른 팀원들은 2.0 대 버전을 사

catchdream.tistory.com

 

 

4. erd를 만든다! 

https://rang22.tistory.com/21

 

[DB] 데이터 모델링 - ERD 실습 문제

실습1. 학적과 수강신청 ▷ 학적과에는 각 과목을 강의하는 강사, 등록한 학생, 강의가 이루어지는 시간(여러개의 값) 및 장소 등의 데이터가 유지된다. ▷ 한 강사가 여러 개의 과목을 강의할 수

rang22.tistory.com

출처


 

실습1. 학적과 수강신청

 

<업무 처리 규정>

▷ 학적과에는 각 과목을 강의하는 강사, 등록한 학생, 강의가 이루어지는 시간(여러개의 값) 및 장소 등의 데이터가 유지된다.
▷ 한 강사가 여러 개의 과목을 강의할 수 있으며, 각 과목과 학생 간에는 학점이 부여된다.
▷ 과목에 대해서는 과목번호, 과목명 등의 정보가 유지되어야 한다.
▷ 강사에 대해서는 강사번호, 이름, 나이, 성별 등의 정보가 유지되어야 한다.
▷ 학생에 대해서는 학번, 이름, 주소 등의 정보가 유지되어야 한다.

 

◆ 문제 풀이

 

먼저 문제 속에서 개념을 추출해보면 강사, 과목, 학생 크게 세가지가 보인다.

또한 강의가 이루어지는 시간이 여러 타임이 있고, 과목을 수강한 학생들은 학점을 부여받는다.

 

세가지 엔티티 간의 관계에 대해 정리를 해보자.

강사 - 과목 => 1 : M
과목 - 학생  => M : N

 

이외에 강의시간을 추가해야하며, M : N의 관계에 Mapping 엔티티를 만들어줘야 한다.

과목  -강의 시간 => 1 : M
학생 - 수강하는 과목 => 1 : M

 

이제 만들어야 하는 엔티티는 총 5가지이다.

강사, 과목, 수강과목, 학생, 강의정보(강의시간 포함)

 

엔티티의 각 속성을 기반으로 관계와 선택성(옵션)를 판단하여 ERD를 작성한다.

 

참고로, 식별자가 같은 엔티티가 있으면 안된다.

왜? 정보를 구분할 수 있는 키가 없기 때문에 항상 엔티티의 식별자를 확인하자!

 

 


https://velog.io/@mark91/%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EB%AA%A8%EB%8D%B8%EB%A7%81

 

데이터 베이스 모델링

현업에서 일하다 보면,신규 기능에 대해서 데이터베이스 모델링(테이블 설계)하는 경우가 빈번하다.예전에 배웠던 기억으로 주먹구구 설계하기 보다는 이번 기회에 다시 한번 정리하고 제대로

velog.io

 

반응형