OPEN between Secret

속성, 관계, 식별자 본문

DB/SQLD

속성, 관계, 식별자

해가꿈꾸는달 2015. 6. 2. 09:57
반응형

속성


속성



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

- 엔터티를 설명하고 인스턴스의 구성요소가 됨.

- 엔터티에 속한 인스턴스들의 성격을 구체적으로 나타내는 항목.



속성의 분류



기본 속성 :  업무분석을 통해 바로 정의한 속성


설계 속성 : 원래 업무상 존재하지 않지만 설계를 하면서 도출해 내는 속성


파생 속성 : 다른속성으로부터 계산이나 변형이 되어 생성되는 속성

    타 속성에 의해 지속적으로 영향을 받아 자신의 값이 변하는 성질을 갖음.



속성이 그 안에 세부 의미를 쪼갤 수 있는지에 따라 분류



복합속성(Composite Attribute) : 시, 구, 동, 번지 등과 같은 여러 세부 속성들로 구성될 수 있음.


단순 속성(simple Attribute): 나이, 성별 등.




속성은 하나의 값을 가지고 있으나, 그 안에 동일한 성질의 여러 개의 값이 나타나는 경우



단일값 속성 : 주민등록번호


다중값 속성 : 전화번호(회사,집,핸드폰)




도메인



- 각 속성이 가질수 있는 값의 범위를 말함


- 엔터티 내에서 속성에 대한 데이터타입과 크기, 제약사항을 지정하는 것.



 


 




관계



관계



- 엔터티의 인스턴스 사이의 논리적인 연관성으로서 존재의 형태로서나 행위로서 서로에게 연관성이 부여된 상태





관계의 패어링



- 인스턴스와 인스턴스 사이의 관계가 설정되어 있는 어커런스를 관계 패어링이라 함.


- 엔터티는 인스턴스의 집합을 논리적으로 표현

  관계 는 관계 패어링의 집합을 논리적으로 표현



관계의 분류



- 존재에 의한    ex) 소속된다


- 행위에 의한    ex) 주문한다.



연관관계 : 항상 이용하는 관계로 존재적 관계  실선화살표


의존관계 : 상대방 클래스의 행위에 의해 관계가 형성될 때  점선화살표



ex)  ERD 에서는 존재적 관계와 행위에 의한 관계를 구분하지 않고 표현

클래스다이어그램에서는 이것을 구분하여 연관관계와 의존관계로 표현



관계 표기법



관계명 : 각각의 관계는 두 개의 관계명을 갖는다.

   엔터티가 관계에 참여하는 형태. 관계시작점. 관계끝점(시작점과 끝점 모두 이름이 필요하다)

   애매한 동사를 피한다. 현재형으로 표현



관계차수 : 두 개의 엔터티간 관계에서 참여자의 수를 표현하는 것

ex) 1:M , 1:1, M:M



관계선택사양 : 선택참여, 필수 참여

  만약 양쪽다 선택참여(0:0, Zero to Zero)면 그 관계는 잘못된 확률이 많음.



 


 



식별자


식별자



- 하나의 엔터티에 구성되어 있는 여러 개의 속성 중에 엔터티를 대표할 수 있는 속성

- 하나의 엔터티는 반드시 하나의 유일한 식별자가 존재해야 함.




식별자의 특징



 주 식별자


: 주식별자에 의해 엔터티 내에 모든 인스턴스들이 유일하게 구분되어야 함  (유일성)

  속성의 수는 유일성을 만족하는 최소의 수가 되어야 함.                  (최소성)

  지정된 주식별자의 값은 자주 변하지 않는 것이어야 함.                  (불변성)

  주식별자가 지정이 되면 반드시 값이 들어와야 함.                       (존재성)



식별자 분류 및 표기법



엔터티의 대표성을 갖는 가에 따라



주식별자( Primary Identifier )


 : 엔터티 내에서 각 어커런스를 구분할 수 있는 구분자, 타 엔터티와 참조관계를 연결할 수 있는 



보조식별자( Alternate Identifier )


: 엔터티내에서 각 어커런스를 구분할 수 있는 구분자이나 대표성을 가지지 못해 참조관계 연결 못함




엔터티 내에서 스스로 생성되었는지 여부에 따라



- 내부식별자 


: 엔터티 내부에서 만들어지는 식별자


- 외부식별자 ( Foreign Identifier )


: 타 엔터티와의 관계를 통해 타 엔터티로부터 받아오는 식별자




단일 속성으로 식별이 되는가에 따라



- 단일식별자 ( Single Identifier )


: 하나의 속성으로 구성된 식별자



- 복합식별자 ( Composit Identifier )


: 둘 이상의 속성으로 구성된 식별자



대체하여 일련번호 같이 새롭게 만들 식별자인지 아닌지



- 본질식별자


: 업무에 의해 만들어지는 식별자



- 인조식별자


: 업무적으로 만들어지진 X. 원조식별자가 복잡한 구성을 가져 인위적으로 만든 식별자




주식별자 도출 기준


- 해당 업무에서 자주 이용되는 속성으로

- 명칭, 내역 등과 같이 이름으로 기술되는 것은 피함

- 속성의 수가 많아지지 않도록 함.



식별자관계와 비식별자 관계에 따른 식별자



출처 : The Guide for SQL Professional Sql 전문가 가이드 2013 Edition

반응형

'DB > SQLD' 카테고리의 다른 글

성능 데이터 모델의 개요  (0) 2016.08.11
엔터티  (0) 2015.06.02
데이터 모델의 이해  (0) 2015.06.02
SQL 활용(STANDARD JOIN)  (0) 2015.03.30
SQL 기본 및 활용(JOIN)  (0) 2015.03.30