자격증/SQLD
[SQLD 자격증] 1과목 | 관계, 식별자
seminj
2023. 3. 6. 23:27
728x90
반응형

ERD(Entity-Relationship Model)
- 하나의 엔터티는 1개 이상의 관계를 가져야함 (통계성, 코드성 엔터티 제외)
- 관계의 구분 : 행위에 의한 관계, 존재에 의한 관계
- >> ERD에서는 두 관계를 구분없이 동일한 표기법으로 표현함
(단, 클래스다이어그램에서는 구분하여 연관관계와 의존관계로 실선과 점선의 표기법으로 다르게 표현함)

- 두 개의 엔터티 사이에서 관계를 도출할 때 체크하는 사항
- 관심있는 연관규칙 여부
- 정보의 조합 여부
- 업무기술서, 장표에 관계연결을 가능하게 하는 동사 여부
- 업무기술서, 장표에 관계연결에 대한 규칙 서술 여부
- ERD 작성순서
- 엔터티 도출 & 그리기
- 엔터티 배치 ( 가장 중요한 엔터티를 좌측 상단에 배치, 추가 발생하는 엔터티는 우측과 하단에 배치 )
- 엔터티 간의 관계를 설정
- 엔터티 간의 관계명 기술
- 관계의 참여도 기술 ( 1:1 , 1:N , M:N )
- 관계의 필수여부 기술 (필수적 관계 : I , 선택적 관계 : O )
- 식별관계(실선)와 비식별관계(점선)

하나의 주문은 반드시 한 명의 고객에게 주문된다. | 한 명의 직원은 하나의 부서에 소속되거나 소속 부서가 없을 수도 있다. |
식별관계 | 비식별관계 |
1. 고객 엔터티의 기본키인 고객번호를 주문 엔터티의 기본키 중 하나로 공유하는 것 | 1. 부서 엔터티의 기본키를 직원 엔터티의 기본키로 갖는 것이 아닌, 일반 칼럼으로 참조함. |
2. 식별 관계는 실선으로 표현한다. | 2. 비식별 관계는 점선으로 표현한다. |
3. 고객(강한 개체)의 기본키 값이 변경되면 식별관계에 있는 엔터티(주문, 약한 개체)의 값도 변한다. 반드시 부모 엔터티에 종속됨. |
3. 자식 주식별자 구성은 독립적으로 구성. |
4. 강한 연결관계. | 4. 약한 연결관계. |
- 참여도 및 필수여부 기술

한 명의 고객은 여러 번 주문할 수 있다. 하나의 주문은 반드시 한 명의 고객에 의해 주문된다. (고객이 반드시 있어야 주문이 발생할 수 있다.) 주문은 안할 수도 있다. (고객은 있지만, 주문은 없을 수 있다.) |
한 부서에 직원이 여러명 포함되거나 소속 직원이 없을 수도 있다. |
식별자

- 대표성 여부
- 주식별자(Primary Key): 유일성, 최소성, 대표성을 만족하는 식별자이며 타 엔터티와 참조 관계로 연결될 수 있다.
- 보조식별자 : 유일성, 최소성은 만족하지만 대표성을 갖지 못하는 식별자이다.

- 속성의 수
- 단일 식별자
- 복합 식별자 : 2개 이상의 속성으로 구성된 식별자

- 스스로 생성 여부
- 내부 식별자 : 엔터티 내에서 생성된 식별자
- 외부 식별자 : 타 엔터티와의 관계를 통해 받아오는 식별자 (Foreign Key)
- 대체여부
- 본질 식별자 : 업무에 의해 만들어지는 식별자
- 인조 식별자 : 복잡한 원조 식별자 대신에 인위적으로 만들어진 식별자 (ex. 일련번호)
주식별자

- 유일성 : 주식별자에 의해 엔터티 속 모든 인스턴스들이 유일하게 구분될 수 있어야 함
- 최소성 : 주식별자를 구성하는 속성의 수는 유일성을 만족하는 최소의 수가 되어야 함
- 불변성 : 지정된 주식별자의 값은 자주 변하지 않는 것이어야 함
- 존재성 : 주식별자가 지정되면 반드시 값이 있어야 함 (Not NULL)
문제

정답

SQLD 목차 바로가기
728x90
반응형