728x90
반응형

https://dev.mysql.com/

 

 

 

안녕하십니까 다제입니다.

 

오늘은 ①SQL Bussiness Rule카디널리티에 대해서 알아보도록 하겠습니다. 

 

 

 

 


 

 

 

1. SQL Bussiness Rule

 -. 말 그대로 실제 데이터베이스를 구축 시, 지켜야할 규칙들에 대해서 알아보도록 하겠습니다. 

 -. 반드시 해당 규칙이 맞다는 것은 아니며, 이러한 규칙이 효율적인 데이터베이스를 생성하는 기반이 된다고 생각합니다. 

 

 

 ★ 규칙

 

  1) 모든 명사는 entity 후보입니다. 

 

  2) 모든 동사는 relationship후보입니다. 

 

  3) 하나의 값으로 표현할 수 잇는 명사는 attribute 후보입니다. 

    * 단, 여러 값을 가질 수 있다면 attribute는 entity 후보가 된다.

    * 또한, 다대다 관계에서는 동사도 entity 후보가 될 수 있기 때문에 "주의"가 필요하다.

    * 비지니스 룰은 항상 간단명료하면서도 필요한  내용을 모두 담고 있어야 한다. 

 

 

 

 


 

 

 

2. 카디널리티

 -. 두 entity type 사이 관계에서 한 종류의 entity가 다른 종류의 entity 몇 개에 대해서 관계를 맺을 수 있는지를 나타내는 개념을 의미합니다. 

 

 

 ★ 종류 

  1) 1:1(일대일 관계)

   -. 두 entity 어디에 다른 테이블 로우를 특정 지을 수 있는 foreign key를 넣어도 큰 상관은 없음

   -. 단, 구조적으로 NULL이 생기는 문제를 최소화하기 위해서 일반적으로 최소 카디널리티가 0인 테이블에 foreign key를 만들어준다. 

   -. 예) 주민등록증, 학생증번호

 

  2) 1:N(일대다 관계)

   -. 1:N 관계에서는 꼭 N쪽에 Foreign Key를 넣어주어야 한다. 

   -. "다"에 해당하는 테이블에 "일"에 해당하는 테이블 로우를 특정 지을 수 있는 foreign key를 만들어준다. 

   -. 예) 선생님과 여러 수업

 

  3) N:N(다대다 관계) 

   -. 연결테이블(Junction Table)을 이용하여 각각의 Foreign Key를 만들어준다. 

   -. 예) 학생과 여러 수업, 쇼핑몰에서 찜하기 기능

참조 링크 이미지 참조

 

 

해당 내용에 대해서는 방대한 자료가 있습니다. 

 

이에, 추가적으로 정보가 필요하신 분들은 위의 카디널리티를 나타내는 이미지를 클릭하시면 추가적으로 공부하실 수 있습니다. 

 

오늘도 방문해주셔서 감사드리며, 공감 부탁드립니다. 

 

감사합니다. 

728x90
반응형

+ Recent posts