관계형 데이터베이스(Relational Database)
관계형 데이터베이스는 Relation들의 집합을 테이블 형태로 표현한 것인데,,
관계형 데이터베이스의 Schema는 Relation Schema와 무결성 제약조건으로 구성된다!
데이터베이스 키(key)
여기서 키(key)는 각 tuple을 유일하게 식별할 수 있는 attribute들의 집합이다
유일성: 각 tuple에서 해당 attribute들의 집합이 유일한가?
최소성: 해당 attribute의 집합이 각 tuple을 식별하는데 필요한 값들만 포함되었는가?
유일성과 최소성을 만족한다면 후보 키(candidate key)
유일성은 만족하지만 최소성을 만족하지 않는다면 슈퍼 키(super key)
후보 key 중에서 DB 설계자가 지정한 key를 기본 키(primary key)라고 한다
~ 기본 키는 null값을 허용하지 않는다
후보 키 중에서 기본 키를 제외한 나머지 후보 키들을 대체 키(alternate key)라고 한다
기본 키가 다른 Relation 키를 참조한다면 외래 키(foreign key)라고 한다
* 즉 FK의 도메인은 참조한 키의 도메인과 같다
무결성 제약(Integrity Constraints)
데이터베이스에 저장되어 있는 데이터 값(tuple)들의 어느 한 시점을 데이터베이스 상태(database state)라고 한다
~ DBMS는 데이터 베이스 상태의 변화에도 항상 무결성 제약을 만족시켜야 한다
무결성 제약에는 개체 무결성(entity integrity)과 참조 무결성(referential integrity)이 있다
개체 무결성: 기본 키 값은 모든 순간에 null 값을 가질 수 없고 유일해야 한다
참조 무결성: 외래 키 값은 반드시 피참조 relation의 기본 키 값이거나 null이다
* 데이터 베이스 상태는 항상 위 두 제약 조건을 만족시켜야 한다
'Computer Science > Database, SQL' 카테고리의 다른 글
[HUFS/데이터베이스] #7 관계 해석 (0) | 2021.09.29 |
---|---|
[HUFS/데이터베이스] #6 관계 대수 (0) | 2021.09.22 |
[HUFS/데이터베이스] #4 관계 데이터 모델 (0) | 2021.09.15 |
[HUFS/데이터베이스] #3 데이터베이스 시스템의 구성 (0) | 2021.09.08 |
[HUFS/데이터베이스] #2 데이터베이스 관리 시스템 (0) | 2021.09.08 |