DBMS 예제를 사용한 엔터티 관계(ER) 다이어그램 모델
ER 다이어그램이란 무엇입니까?
ER 다이어그램 Entity Relationship Diagram의 약자로, ERD라고도 하며 데이터베이스에 저장된 엔티티 집합의 관계를 표시하는 다이어그램입니다. 즉, ER 다이어그램은 데이터베이스의 논리적 구조를 설명하는 데 도움이 됩니다. ER 다이어그램은 엔티티, 속성 및 관계라는 세 가지 기본 개념을 기반으로 만들어집니다.
ER 다이어그램에는 개체를 나타내는 직사각형, 속성을 정의하는 타원, 관계를 나타내는 다이아몬드 모양을 사용하는 다양한 기호가 포함되어 있습니다.
처음 보면 ER 다이어그램은 순서도와 매우 유사해 보입니다. 그러나 ER 다이어그램에는 많은 특수 기호가 포함되어 있으며 그 의미가 이 모델을 독특하게 만듭니다. ER 다이어그램의 목적은 엔터티 프레임워크 인프라를 나타내는 것입니다.

ER 모델이란 무엇입니까?
응급실 모델 엔터티 관계 모델(Entity Relationship Model)은 상위 수준의 개념적 데이터 모델 다이어그램을 나타냅니다. ER 모델은 데이터 요구 사항을 체계적으로 분석하여 잘 설계된 데이터베이스를 생성하는 데 도움이 됩니다. ER 모델은 실제 개체와 개체 간의 관계를 나타냅니다. ER 모델 생성 DBMS 데이터베이스를 구현하기 전에 모범 사례로 간주됩니다.
응급실 모델링 데이터 요구 사항을 체계적으로 분석하여 잘 설계된 데이터베이스를 생성하는 데 도움이 됩니다. 따라서 데이터베이스를 구현하기 전에 ER 모델링을 완료하는 것이 모범 사례로 간주됩니다.
ER 모델의 역사
ER 다이어그램은 ER 모델을 표현하는 데 도움이 되는 시각적 도구입니다. Peter Chen은 관계형 데이터베이스와 네트워크에 사용할 수 있는 통일된 규칙을 만들기 위해 1971년에 ER 다이어그램을 제안했습니다. 그는 개념적 모델링 접근 방식으로 ER 모델을 사용하는 것을 목표로 했습니다.
ER 다이어그램을 사용하는 이유는 무엇입니까?
ER 다이어그램을 사용하는 주요 이유는 다음과 같습니다.
- 엔터티 관계 모델링과 관련된 용어를 정의하는 데 도움이 됩니다.
- 모든 테이블이 어떻게 연결되어야 하는지, 각 테이블에 어떤 필드가 포함될 것인지에 대한 미리보기를 제공하세요.
- 엔터티, 속성, 관계를 설명하는 데 도움이 됩니다.
- ER 다이어그램은 관계형 테이블로 변환 가능하므로 데이터베이스를 빠르게 구축할 수 있습니다.
- ER 다이어그램은 데이터베이스 설계자가 특정 소프트웨어 애플리케이션에서 데이터를 구현하기 위한 청사진으로 사용할 수 있습니다.
- 데이터베이스 설계자는 ERP 다이어그램의 도움으로 데이터베이스에 포함될 정보를 더 잘 이해할 수 있습니다.
- ERD 다이어그램을 사용하면 데이터베이스의 논리적 구조를 사용자에게 전달할 수 있습니다.
ER 다이어그램 모델에 대한 사실
이제 이 ERD 다이어그램 튜토리얼에서는 ER 다이어그램 모델에 대한 몇 가지 흥미로운 사실을 확인해 보겠습니다.
- ER 모델을 사용하면 데이터베이스 설계를 그릴 수 있습니다.
- 데이터 모델링을 위한 사용하기 쉬운 그래픽 도구입니다.
- 데이터베이스 설계에 널리 사용됨
- 데이터베이스의 논리적 구조를 GUI로 표현한 것입니다.
- 시스템에 존재하는 엔터티와 해당 엔터티 간의 관계를 식별하는 데 도움이 됩니다.
ER 다이어그램 기호 및 표기법
엔터티 관계 다이어그램 기호 및 표기법 주로 요소, 엔터티 및 속성 간의 관계를 나타내는 직사각형, 타원형 및 다이아몬드의 세 가지 기본 기호가 포함되어 있습니다. ERD 다이어그램에는 주요 요소를 기반으로 하는 몇 가지 하위 요소가 있습니다. ER 다이어그램은 다양한 ERD 기호 및 표기법을 사용하여 데이터가 서로 어떻게 관련되어 있는지 설명하는 데이터를 시각적으로 표현한 것입니다.
다음은 ER 다이어그램의 주요 구성 요소와 기호입니다.
- 직사각형 : 이 엔터티 관계 다이어그램 기호는 엔터티 유형을 나타냅니다.
- 타원 : 기호는 속성을 나타냅니다.
- 다이아 패 한 벌: 이 기호는 관계 유형을 나타냅니다.
- 윤곽: 속성을 엔터티 유형 및 다른 관계 유형의 엔터티 유형에 연결합니다.
- 기본 키: 속성에는 밑줄이 그어져 있습니다
- Double 타원: 다중 값 속성을 나타냅니다.
ER 다이어그램의 구성 요소
이 모델은 세 가지 기본 개념을 기반으로 합니다.
- 엔터티
- Attributes
- 관계
ER 다이어그램 예
예를 들어 대학 데이터베이스에는 학생, 강좌 및 강사에 대한 엔터티가 있을 수 있습니다. 학생 엔터티에는 Rollno, Name 및 DeptID와 같은 속성이 있을 수 있습니다. 그들은 코스 및 강사와 관계를 가질 수 있습니다.
엔터티란 무엇인가요?
쉽게 인식할 수 있거나 인식할 수 없는, 살아 있거나 무생물인 현실 세계의 것. 데이터베이스에 표시되는 것은 기업 내 모든 것입니다. 그것은 물리적인 것일 수도 있고 단순히 기업에 관한 사실이거나 현실 세계에서 일어나는 사건일 수도 있습니다.
엔터티는 데이터베이스에 데이터를 저장하는 장소, 사람, 객체, 이벤트 또는 개념일 수 있습니다. 엔터티의 특징은 속성과 고유 키가 있어야 한다는 것입니다. 모든 엔터티는 해당 엔터티를 나타내는 일부 '속성'으로 구성됩니다.
엔터티의 예:
- 사람: 직원, 학생, 환자
- 장소 : 상점, 건물
- 목적: 기계, 제품, 자동차
- 이벤트 : 판매, 등록, 갱신
- 개념: 계정, 코스
엔터티 표기법
엔터티 세트
학생
엔터티 세트는 유사한 종류의 엔터티 그룹입니다. 유사한 값을 공유하는 속성을 가진 엔터티가 포함될 수 있습니다. 엔터티는 속성이라고도 하는 속성으로 표현됩니다. 모든 속성에는 별도의 값이 있습니다. 예를 들어 학생 엔터티에는 이름, 나이, 학급 등의 속성이 있을 수 있습니다.
엔터티의 예:
대학에는 일부 부서가 있을 수 있습니다. 이 모든 부서에서는 다양한 강사를 고용하고 여러 프로그램을 제공합니다.
일부 과정은 각 프로그램을 구성합니다. 학생들은 특정 프로그램에 등록하고 다양한 코스에 등록합니다. 특정 학과의 강사가 각 과목을 수강하고, 각 강사는 다양한 그룹의 학생들을 가르칩니다.
관계
관계는 둘 이상의 개체 간의 연관에 지나지 않습니다. 예를 들어 Tom은 화학과에서 근무합니다.
엔터티는 관계에 참여합니다. 우리는 종종 동사나 동사구와의 관계를 식별할 수 있습니다.
예 :
- 당신은 이 강의에 참석하고 있습니다
- 강의를 하고 있어요
- 엔터티를 보면 관계 유형에 따라 관계를 분류할 수 있습니다.
- 학생이 강의를 듣고 있다
- 강사가 강의를 하고 있습니다.
약한 엔터티
약한 엔터티는 키 속성이 없는 엔터티 유형입니다. 다른 개체의 기본 키를 고려하여 고유하게 식별할 수 있습니다. 이를 위해서는 약한 엔터티 세트가 참여해야 합니다.
위의 ER 다이어그램 예에서 "Trans No"는 ATM의 거래 그룹 내의 판별자입니다.
약한 엔터티를 강한 엔터티와 비교하여 더 자세히 알아보겠습니다.
강력한 엔티티 집합 | 약한 엔터티 세트 |
---|---|
강력한 엔티티 집합에는 항상 기본 키가 있습니다. | 기본 키를 생성하기에 충분한 속성이 없습니다. |
직사각형 기호로 표시됩니다. | 이는 이중 직사각형 기호로 표시됩니다. |
여기에는 밑줄 기호로 표시되는 기본 키가 포함됩니다. | 여기에는 점선 밑줄 기호로 표시되는 부분 키가 포함되어 있습니다. |
강력한 엔티티 집합의 멤버를 지배적인 엔티티 집합이라고 합니다. | 하위 엔터티 집합이라고 하는 약한 엔터티 집합의 구성원입니다. |
기본 키는 구성원을 식별하는 데 도움이 되는 속성 중 하나입니다. | 약한 엔티티 집합에서는 강력한 엔티티 집합의 기본 키와 부분 키의 조합입니다. |
ER 다이어그램에서 두 강력한 엔티티 집합 간의 관계는 다이아몬드 기호를 사용하여 표시됩니다. | 강력한 엔티티 집합과 약한 엔티티 집합 간의 관계는 두 개의 다이아몬드 기호를 사용하여 표시됩니다. |
강력한 개체 집합과 관계를 연결하는 선은 단일입니다. | 관계를 식별하기 위한 약한 엔티티 집합을 연결하는 선은 두 배입니다. |
Attributes
엔터티 유형 또는 관계 유형의 단일 값 속성입니다.
예를 들어 강의에는 시간, 날짜, 기간, 장소 등의 속성이 있을 수 있습니다.
ER 다이어그램 예제의 속성은 타원으로 표시됩니다.
속성 유형 | 상품 설명 |
---|---|
단순 속성 | 단순 속성은 더 이상 나눌 수 없습니다. 예를 들어, 학생의 연락처 번호. 원자 값이라고도 합니다. |
복합 속성 | 복합 속성을 분해하는 것이 가능합니다. 예를 들어, 학생의 전체 이름은 이름, 두 번째 이름, 성으로 더 세분화될 수 있습니다. |
파생 속성 | 이 유형의 속성은 물리적 데이터베이스에 포함되지 않습니다. 그러나 해당 값은 데이터베이스에 있는 다른 속성에서 파생됩니다. 예를 들어 나이는 직접 저장하면 안 됩니다. 대신 해당 직원의 DOB에서 파생되어야 합니다. |
다중값 속성 | 다중값 속성은 두 개 이상의 값을 가질 수 있습니다. 예를 들어, 학생은 두 개 이상의 휴대전화 번호, 이메일 주소 등을 가질 수 있습니다. |
카디널리티
두 엔터티 또는 엔터티 집합 간의 관계에 대한 숫자 속성을 정의합니다.
다양한 유형의 기본 관계는 다음과 같습니다.
- 일대일 관계
- 일대다 관계
- XNUMX월 XNUMX일 관계
- 다대다 관계
1.일대일:
엔터티 세트 X의 한 엔터티는 엔터티 세트 Y의 최대 한 엔터티와 연관될 수 있으며 그 반대의 경우도 마찬가지입니다.
예: 한 학생이 여러 강좌에 등록할 수 있습니다. 그러나 모든 코스에는 해당 학생에게 돌아가는 단일 라인이 있습니다.
2.일대다:
엔터티 세트 X의 한 엔터티는 엔터티 세트 Y의 여러 엔터티와 연결될 수 있지만 엔터티 세트 Y의 엔터티는 하나 이상의 엔터티와 연결될 수 있습니다.
예를 들어, 한 학급은 여러 명의 학생으로 구성됩니다.
3. 다대일
엔터티 세트 X의 둘 이상의 엔터티는 엔터티 세트 Y의 최대 하나의 엔터티와 연관될 수 있습니다. 그러나 엔터티 세트 Y의 엔터티는 엔터티 세트 X의 둘 이상의 엔터티와 연관될 수도 있고 연관되지 않을 수도 있습니다.
예를 들어, 많은 학생들이 같은 반에 속해 있습니다.
4. 다대다:
X의 한 엔터티는 Y의 두 개 이상의 엔터티와 연결될 수 있으며 그 반대의 경우도 마찬가지입니다.
예를 들어 그룹으로서의 학생은 여러 교직원과 연결되고 교직원은 여러 학생과 연결될 수 있습니다.
ERD(엔터티 관계 다이어그램)를 만드는 방법
이제 이 ERD 다이어그램 튜토리얼에서 ER 다이어그램을 만드는 방법을 알아보겠습니다. 다음은 ER 다이어그램을 만드는 단계입니다.
엔터티 관계 다이어그램 예를 통해 이를 연구해 보겠습니다.
In a university, a Student enrolls in Courses. A student must be assigned to at least one or more Courses. Each course is taught by a single Professor. To maintain instruction quality, a Professor can deliver only one course
1단계) 엔터티 식별
우리는 세 개의 엔터티를 가지고 있습니다
- 학생
- 코스
- 교수
2단계) 관계 식별
우리는 다음 두 가지 관계를 갖습니다.
- 학생은 할당 된 코스
- 교수 제공 코스
3단계) 카디널리티 식별
문제 설명에 대해 우리는 다음을 알고 있습니다.
- 학생을 배정할 수 있습니다. 여러 코스
- 교수는 강의만 할 수 있다 한 코스
4단계) 속성 식별
속성을 식별하려면 조직에서 현재 유지 관리하는 파일, 양식, 보고서, 데이터를 연구해야 합니다. 또한 다양한 이해관계자와 인터뷰를 수행하여 엔터티를 식별할 수도 있습니다. 처음에는 속성을 특정 엔터티에 매핑하지 않고 식별하는 것이 중요합니다.
속성 목록이 있으면 이를 식별된 엔터티에 매핑해야 합니다. 속성이 정확히 하나의 엔터티와 쌍을 이루는지 확인하세요. 속성이 둘 이상의 엔터티에 속해야 한다고 생각하는 경우 수정자를 사용하여 고유하게 만드세요.
매핑이 완료되면 기본 키를 식별합니다. 고유 키를 쉽게 사용할 수 없는 경우 새로 생성하세요.
기업 | 기본 키 | 속성 |
---|---|---|
학생 | 학생 아이디 | 학생 이름 |
교수 | 직원_ID | 교수이름 |
코스 | 강좌_ID | 강좌명 |
코스 엔터티의 경우 속성은 기간, 학점, 과제 등이 될 수 있습니다. 편의상 하나의 속성만 고려했습니다.
5단계) ERD 다이어그램 생성
엔터티 관계 다이어그램 예의 보다 현대적인 표현
효과적인 ER 다이어그램 개발을 위한 모범 사례
다음은 효과적인 ER 다이어그램 개발을 위한 몇 가지 모범 사례 또는 예입니다.
- 중복된 엔터티 또는 관계를 제거합니다.
- 모든 엔터티와 관계에 올바르게 레이블이 지정되어 있는지 확인해야 합니다.
- ER 다이어그램에는 다양한 유효한 접근 방식이 있을 수 있습니다. ER 다이어그램이 저장해야 하는 모든 데이터를 지원하는지 확인해야 합니다.
- 각 엔터티가 ER 다이어그램에 한 번만 나타나는지 확인해야 합니다.
- 다이어그램에 표시되는 모든 관계, 엔터티 및 특성의 이름을 지정하세요.
- 절대로 서로 관계를 연결하지 마십시오.
- ER 다이어그램의 중요한 부분을 강조하려면 색상을 사용해야 합니다.
제품 개요
- DBMS의 ER 모델은 엔터티-관계 모델을 나타냅니다.
- ER 모델은 상위 수준의 데이터 모델 다이어그램입니다.
- ER 다이어그램은 ER 모델을 표현하는 데 도움이 되는 시각적 도구입니다.
- DBMS의 ER 다이어그램은 데이터베이스의 청사진입니다.
- 엔터티 관계 다이어그램 DBMS는 데이터베이스에 저장된 엔터티 집합의 관계를 표시합니다.
- ER 다이어그램은 엔터티 관계 모델링과 관련된 용어를 정의하는 데 도움이 됩니다.
- DBMS의 ER 모델은 엔티티, 속성 및 관계라는 세 가지 기본 개념을 기반으로 합니다.
- 엔터티는 데이터베이스(DBMS)에 데이터를 저장하는 장소, 사람, 객체, 이벤트 또는 개념일 수 있습니다.
- 관계는 둘 이상의 개체 간의 연관에 지나지 않습니다.
- 약한 엔터티는 키 속성이 없는 엔터티 유형입니다.
- 엔터티 유형 또는 관계 유형의 단일 값 속성입니다.
- 두 엔터티 또는 엔터티 집합 간의 관계의 숫자 속성을 정의하는 데 도움이 됩니다.
- ER-다이어그램 DBMS는 데이터가 서로 어떻게 연관되어 있는지를 시각적으로 표현한 것입니다.
- DBMS에서 ER 다이어그램을 그릴 때 모든 엔터티와 관계에 적절한 레이블이 지정되어 있는지 확인해야 합니다.