2020. 6. 21. 01:20ㆍbasic/Database
1. 키 제약조건
1-1. 튜플의 유일성 : 릴레이션은 집합이기 때문에 모든 릴레이션에 있는 튜플들은 유일(서로 달라야함)
1-2. 키(key)란 모든 튜플을 유일하게 식별할 수 있는 최소한의 애트리뷰트의 집합 (유일성, 최소성)
2. 키의 종류
2-1. 후보키(Candidate Key) : 튜플을 유일하게 식별할 수 있는 최소의 애트리뷰트 집합
2-2. 기본키(Primary Key) : 후보키 중 하나, 데이터베이스 설계자가 선정
2-3. 대체키(Alternate Key) : 후보키 중 기본키를 제외한 나머지 키
* 후보키 = 기본키 + 대체키
2-4. 슈퍼키(Super Key) : 후보키를 포함한 모든 애트리뷰트의 집합
2-5. 복합키(Complex Key) : 두개 이상의 애트리뷰트가 합쳐져야 후보키 역할을 하는 경우
2-6. 외래키(Foreign Key) : 릴레이션 R에 속한 어떤 애트리뷰트의 집합 FK가 있다고 하면,
FK의 값은 반드시 어떤 릴레이션S의 기본키값이어야하며, 이 FK를 릴레이션 R의 외래키라고 함
또한, Null 값을 가질 수 있음.
3. 무결성 제약조건
3-1. 개체 무결성(Entity Integrity) : 릴레이션의 튜플을 유일하게 식별할 수 있어야 하며(기본키),
기본키에 속해있는 애트리뷰트는 Null 값을 가질 수 없다.
3-2. 참조 무결성(Reference Integrity) : 릴레이션은 참조할 수 없는 외래키 값을 가져서는 안된다(외래키)
3-3. 도메인 무결성(Domain Integrity) : 해당 애트리뷰트의 값이 도메인 내에서 속한 값이어야 한다.
4. 개체관계의 관계모델 변환
4-1. (개체) 개체는 그 자체로 하나의 릴레이션으로 변환됨
이때 개체 이름은 릴레이션 이름으로 대응
개체에 속한 각각의 속성을 릴레이션의 애트리뷰트로 대응
4-2. 약개체의 경우 약개체는 기본키에 해당하는 속성(집합)이 없음
약개체가 기준으로 하는 개체에서 필요한 속성을 빌려와야 함
기준 개체의 기본키와 약개체의 대표 속성을 합치고, 이를 기본키로 하는 릴레이션을 만듦
5. 관계의 릴레이션 변환
5-1. (관계, n:m 관계) 관계 역시 그 자체로 하나의 릴레이션으로 변환됨
이때 양쪽의 기본키 두개를 각각 외래키로 만들고, 이 두키를 합쳐서 기본키로 하는 별도의 릴레이션을 생성함
5-2. (관계, 1:n 관계) n쪽 개체 인스턴스 각각에 1쪽 연결정보를 표시
5-3. (관계, 1:1 관계) 어느쪽이든 한쪽 기본키를 다른쪽의 외래키로 넣어서 릴레이션을 생성함
6. 속성의 관계모델 변환
6-1. 키속성을 가진 개체의 릴레이셔 변환
앞서 4-1에서 설명한바와 같음. 개체를 릴레이션으로 만들고, 속성을 기본키로 설정
(개체 자체가 정보의 저장/관리 단위가 됨)
6-2. 다중값 속성의 릴레이션 변환
-> 다중값 속성이란 하나의 속성에 여러 개의 값이 들어간다는 의미.
-> 하지만, 관계형 모델에서 하나의 속성은 하나의 원자값을 가져야 하므로 (도메인 무결성) 별도의 변환 방법이 필요하다.
기본키와 다중값 속성을 합쳐서 복합속성을 만들고 이를 기본키로 하는 별도의 릴레이션 생성
6-3. 복합 속성의 릴레이션 변환
-> 하나의 속성이 여러 개의 세부속성으로 구성되어 있다는 의미.
-> 하지만 관계형 모델에서 하나의 속성은 하나의 원자값 만을 가져야 되므로 별도의 변환 방법이 필요하다.
복합속성을 합쳐서 하나의 애트리뷰트로 만들던지, 아니면 나누어서 여러개의 애트리뷰트로 만든다.
6-4. 유도 속성의 릴레이션 변환
유도 속성은 다른 속성에 의해 가공되어서 만들어진 값을 가지는 속성을 말한다.
존재여부를 신중하게 고려할 필요가 있다.
6-5. 관계에 속한 속성의 릴레이션 변환 (5-1~5-3를 참조)
1:N의 경우) N쪽의 릴레이션에 외래키 형태로 나타남
N:M의 경우) 해당 관계는 새로운 릴레이션으로 생성됨
* 관계에 속한 속성은 그 관계가 표현된 릴레이션의 한 애트리뷰트로 변환
<출처>
1. 데이터베이스 시스템 6판, Ramez Elmasri , Shamkant B. Navathe 지음, 황규영, 홍의경, 음두헌 옮김, 홍릉과학출판사, 2011년 12월
2. 데이터베이스 시스템, 이석호 지음, 정익사, 2014년 8월
'basic > Database' 카테고리의 다른 글
물리적 데이터베이스 설계 (0) | 2020.06.21 |
---|---|
관계데이터 구조 및 제약 (0) | 2020.04.17 |
데이터모델링 – ER모델 (0) | 2020.03.30 |
데이터 모델링과 설계 (0) | 2020.03.23 |
데이터베이스 관리 시스템 (0) | 2020.03.23 |