Contents

02_SQLD_제2 절 엔터티 & 제3 절 속성

​

# SQL


제1 장 데이터 모델링의 이해


제2 절 엔터티(Entity)

  1. 엔터티의 개념

    • 실체, 객체 / 실무적으론는 앤터티라고 부른다. 즉 업무에 필요하고 유용한 정보를 저장하고 관리하기 위한 집합적인 것

      ​

  2. 엔터티와 인스턴스에 대한 내용과 표기법

    ​

  3. 엔터티의 특징

    • 반드시 해당 업무에서 필요하고 관리하고자 하는 정보여야 한다.

    • 유일한 식별자에 의해 식별이 가능해야 한다.

    • 영속적으로 존재하는 인스턴스의 집합이어야 한다. (반드시 ‘두 개 이상’)

    • 엔터티는 업무에 이용되어야 한다.

    • 엔터티는 반드시 ‘두 개 이상’의 속성을 갖는다.

    • 엔터티는 다른 엔터티와 최소 한 개 이상의 관계가 있어야 한다.

      ​

  4. 엔터티의 분류

    1. 우뮤형에 따른 분류 - 유형, 개념, 사건엔터티

    2. 발생시점에 따른 분류 - 기본(키), 중심, 행위엔터

    3. 스스로 생성할 수 있는지에 따라 - 독립, 의존 엔터티

      ​

  5. 엔터티의 명명

    • 현업 업무에서 사용하는 용어를 사용
    • 약어를 가능하면 사용하지 않는다.
    • 단수 명사를 사용
    • 모든 엔티티명은 유일해야 함
    • 엔티티 생성 의미대로 이름을 부여

​


제3 절 속성(Attribute)

  1. 속성의 개념

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

      즉, 속성이란 의미상 더 이상 분리되지 않으며, 엔터티를 설명하는 요소이며, 인스턴스의 구성요소이다.

  2. 엔터티, 인스턴스, 속성, 속성값

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

      • 한 개의 엔터티는 두 개 이상의 인스턴스 집합이어야 한다.
      • 한 개의 엔터티는 두 개 이상의 속성을 갖는다.
      • 한 개의 속성은 한 개의 속성값을 갖는다.
    • 속성의 표기법

      1. IE 표기법

      2. Barker 표기법

        ​

  3. 속성의 특징

    1. 반드시 해당 업무에서 필요하고 관리하고자 하는 정보여야 한다.

    2. 정규화 이론에 근간하여 정해진 주식별자에 함수 종속성을 가져야 한다.

    3. 한 개의 속성은 한 개의 속성값을 갖는다. 만약 한 개의 속성에 여러 속성값을 갖는 다중 값일 경우 별도의 엔터티로 분리하여 관리한다.

      ​

  4. 속성의 분류

    • 속성의 특성에 따른 분류

      1. 기본속성

        • 업무로부터 추출한 모든 속성
      2. 설계속성

        • 기본속성 외에 새롭게 만들거나 변형하여 정의한 속성
      3. 파생속성

        • 타 속성에 의해 지속적으로 영향을 받아 값이 변하는 성질을 가지고 있는 속성
          • 파생속성은 그 속성이 가지고 있는 계산방법에 대해 반드시 어떤 엔터티에 어떤 속성에 의해 영향을 받는지 정의가 되어야 한다.
          • 파생속성은 꼭 필요한 경우에만 정의하여 업무로직이 속성내부로 스며들지 못하도록 주의해야 한다.
          • 파생속성을 정의한 경우라면 그 값의 정합성을 유지할 수 있도록 해야 한다.
          • 주로 통계관련 엔터티, 배치작업 수행 관련에 사용된다.

        ​

    • 엔터티 구성방식에 따른 분류

      • PK(Prime Key) == 엔터티를 식별할 수 있는 고유한 속성

      • FK(Foreign Key) == 다른 엔터티와의 관계로, 연결된 속성

      • 일반 속성 == 엔터티에 포함되어 있고, PK, FK가 아닌 속성

      • 추가로 의미를 쪼갤 수 있는지에 따라 단순형, 복합형으로 분류할 수 있다.

      • 한 속성에 한 개의 값 → 단일값(Single Value)

      • 한 속성에 여러 개의 값 → 다중값(Multi Value)

        ​

  5. 도메인(Domain)

    • 각 속성이 가질 수 있는 값의 범위 (일종의 테이터 타입, 크기, 제약사항등을 지정하는 것)

      ex) ‘‘학점’‘이라는 ‘‘도메인’‘은 0 <= X <= 4.5 

      ​

  6. 속성의 명명(Naming)

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