본문 바로가기

자격증/SQLD

[SQLD] 강의 03~05. 엔티티, 속성, 도메인, 식별자/비식별자 관계

 

1.2 엔티티
  

 - 엔티티의 개념

 * 엔티티 (Entity)
 - 데이터베이스의 구성요소 중 독립적으로 식별 가능한 객체(Object).
 - 엔티티의 하위 요소를 '속성(Attribute)'라 함.
   ex) 회원 엔티티의 속성 : 회원명, 회원코드, 주소 

 * 엔티티의 특징
 1) 업무에서 필요로 하고 관리하고자 하는 정보여야 한다.
 2) 식별이 가능하도록 유일한 식별자를 가져야 한다.
 3) 영속적으로 존재하는 인스턴스*가 두 개 이상인 집합을 이루어야 한다.  _하나인 경우 굳이 엔티티로 정의할 필요X
 4) 하위요소로 반드시 속성(attribute)을 가져야 한다.
 5) 엔티티는 다른 엔티티와 한 개 이상의 관계를 가져야 한다.
  (단, 통계성 엔티티나 코드성 엔티티의 경우 관계 생략 가능)

  • 인스턴스 : 엔티티로 정의된 구조에 맞춰 실제 디스크에 저장된 데이터

  • attribute : 엔티티의 구성요소
  • property : 객체의 특성

 


 

릴레이션 (Relation)
   엔티티  --- 
논리적 데이터 모델링
   테이블  --- 
물리적 데이터 모델링

 


 

1.3 속성
  

 - 속성과 도메인

 * 속성(attribute)
 - 엔티티의 하위요소로, 엔티티에 대한 자세하고 구체적인 정보를 나타낸 것.
 - 의미상으로 분리되지 않는 최소의 데이터 단위.
 - 속성의 개수에는 제한이 없지만, 처리하고자 하는 업무 프로세스에 꼭 필요한 것 위주로 최소화 필요.

 * 속성값
 - 속성이 가질 수 있는 특정 값.
 - 하나의 엔티티 인스턴스에서 각각의 속성은 하나의 속성값만을 지님.

 


 

  • 엔티티, 인스턴스, 속성값
    - 한 개의 엔티티는 두 개 이상의 인스턴스를 가진다. (인스턴스의 집합) 
    - 한 개의 엔티티는 두 개 이상의 속성을 가진다.
    - 한 개의 속성은 한 개의 속성값을 가진다.

 

[ 도서 ]   --> 엔티티

No. 제목 장르
1 해리포터 판타지
2 원더 어린이
3 죄와 벌  고전

 각각의 row  --> 인스턴스 
 'No' , '제목' , '장르'  --> 속성
 '1' , '해리포터' , '판타지' --> 속성값

 


 * 속성의 특성에 따른 분류
 - 기본 속성 : 엔티티가 본래부터 가지고 있어야 하는 속성.
 - 설계 속성 : 엔티티가 본래부터 가지고 있던 속성은 아니지만 설계 시 필요하다고 판단되어 도출된 속성.
 - 파생 속성 : 다른 속성으로부터 계산되거나 특정 규칙에 따라 변형되어 만들어진 속성. **


 * 속성의 구성방식에 따른 분류
 - PK (Primary Key, 기본키) 속성 : 해당 엔티티의 인스턴스를 유일하게 식별할 수 있는 속성.
 - FK (Foreign Key, 외래키) 속성 : 관계를 통해 다른 엔티티의 속성을 가져와 포함시킨 속성.
 - 일반 속성 : 키(PK 또는 FK)가 아닌 나머지 일반 속성.

 


 

 * 도메인
 - 속성이 가질 수 있는 값의 범위(값의 데이터 타입크기 등의 조건)를 정의한 것으로, 
  도메인이 지정된 속성은 해당 도메인의 데이터 타입, 크기, 제약사항 등을 따른다.
  ex) '주문'이라는 엔티티가 있을 때 '단가'라는 속성값의 범위는 10에서 1000사이의 정수값이며, 
       상품명 속성은 길이가 30자리 이내의 문자열이다.

 


 

1.5 식별자

 * 식별자 관계
 - 엔티티 간의 강한 연결 관계를 표현.
 - ERD에서 실선으로 표현
 - 부모 엔티티 인스턴스가 소멸할 때 자식 엔티티 인스턴스도 같이 소멸하는 경우 적합. 
    (같은 생명주기를 가짐)

 

 * 비식별자 관계
 - 엔티티 간의 약한 연결 관계를 표현.
 - ERD에서 점선으로 표현.
 - 자식 엔티티의 주식별자를 부모 엔티티와 별도로 생성하거나, 
  부모 엔티티 인스턴스에 참조값이 없어도 자식 엔티티 인스턴스가 생성될 수 있을 때 적합.

 

ERD_IE

 


 

https://www.youtube.com/watch?v=TOObFwC6PjM&list=PLDI0745yTBjXFuIFYqq3vzcQYuVyajFpC&index=3

https://www.youtube.com/watch?v=j_WjuThGZwI&list=PLDI0745yTBjXFuIFYqq3vzcQYuVyajFpC&index=4

https://www.youtube.com/watch?v=6E494qAtZ9Y&list=PLDI0745yTBjXFuIFYqq3vzcQYuVyajFpC&index=5

 

 

'자격증 > SQLD' 카테고리의 다른 글

[SQLD] 강의 01~02. 데이터 모델링, 단계, 스키마  (0) 2025.01.27