본문 바로가기
스터디/SQL

[정리노트] SQLD 2024년 개정판 - 속성

by 견습생L 2024. 7. 29.

[정리노트] SQLD 2024년 개정판 - 속성

 


속성

개념
- 업무에서 필요로 하는 인스턴스에서 관리하고자 하는 의미상 더 이상 분리 되지 않는 최소의 데이터 단위

  •   업무에서 필요로 해야한다.
  •   의미상 더 이상 분리되지 않는다.
  •   엔터티를 설명하고 인스턴스의 구성요소가 된다.

 

엔터티, 인스턴스, 속성, 속성값의 관계

  •   한 개의 엔터티는 두 개 이상의 인스턴스의 집합 이어야 한다.
  •   한 개의 인스턴스는 두 개 이상의 속성을 갖는다.
  •   한 개의 속성은 한 개의 속성값을 갖는다.
  •   예시
    •   엔터티 (고객) → 인스턴스 (홍길동, 이순신) → 속성 (홍길동 성별코드, 이순신 성별코드) → 속성값 (남)
    •   이름, 주소, 생년월일과 같은 각각의 값을 대표로 하는 이름들을 속성이라고 하고, 홍길동, 서울시 강서구, 1967년 12월 31일과 같이 각각의 이름에 대한 구체적인 값을 속성값(Value)이라고 한다.

 

속성의 표기법

  1. 속성명을 기재
  2. 해당 속성이 식별자(#)인지 아닌지 표시
  3. 해당 속성이 필수값(*)인지 선택값(o)인지 표시

 

특징

  1. 엔터와 마찬가지로 반드시 해당 업무에서 필요하고 관리하고자 하는 정보 (ex. 강사의 강사명)
  2. 정규화 이론에 근간하여 정해진 주 식별자에 함수적 종속성을 가져야 한다.
    (ex. 강사번호식별자)만 알면 종속된 강사명, 주소, 생년월일을 알 수 있다.
  3. 하나의 속성에는 한 개의 값 만을 가진다. 하나의 속성에 여러 개의 값이 있는 다중 값일 경우 별도의 엔터티를 이용하여 분리 한다.

 

속성의 분류 - 형식

  1. 단순 속성 (Simple Attribute): 더 이상 분해할 수 없는 단위의 속성
  2. 복합 속성 (Composite Attribute): 2개 이상의 기본 속성들로 분해 가능한 속성
  3. 단일치 속성 (Single Valued Attribute): 하나의 값만 존재하는 속성
  4. 다중치 속성 (Multi Valued Attribute): 여러 개의 값을 가질 수 있는 속성

 

속성의 분류 - 특성에 따른 분류

 

기본은 각 각의 값이라면, 설계는 제조사 코드를 임의로 만든것, 계산에 의한 것들은 파생이라고 생각하면 된다.

  1. 속성은 업무분석을 통해 바로 정의한 속성을 기본속성 (Basic Attribute)
  2. 원래 업무상 존재하지 않지만 설계를 하면서도 도출해내는 속성을 설계속성 (Designed Attribute)
  3. 다른 속성으로부터 계산이나 변형이 되어 생성되는 속성을 파생속성 (Derived Attribute)라고 한다.

 

속성의 분류 - 엔터티 구성방식에 따른 분류

 

  •   엔터티를 식별할 수 있는 속성을 PK (Primary Key)속성, 다른 엔터티와의 관계에서 포함된 속성을 FK (Foreign Key) 속성, 엔터티에 포함되어 있고 PK, FK에 포함되지 않은 속성을 일반 속성 이라고 한다.

 

속성의 명명

  1. 해당 업무에서 사용하는 이름을 부여한다.
  2. 서술식 속성명은 사용하지 않는다
  3. 약어 사용은 가급적 제한한다.
  4. 전체 데이터모델에서 유일성 확보하는 것이 좋다.

 

도메인 (Domain)

  1. 각 속성은 가질 수 있느 값의 범위를 정의할 수 있는데, 이를 그 속성의 도메인 (Domain)이라고 한다.
  2. 학생이라는 엔터티가 있을 때 학점이라는 속성은 도메인은 0.0~ 4.0 사이의 실수 값이며, 주소라는 속성은 길이가 20자리 이내인 문자열로 정의
  3. 각 속성은 도메인 이외의 값을 갖지 못한다.
반응형