끄앙.. 다시 공부하려니 머리가 복작복작 ㅠㅠ

데이터베이스는 집합에 기반을 두고 있다.
그렇기에 각각의 항목들은 순서가 존재하지 않으며
원하는 값을 꺼내기 위한 조건에 따라 키들이 분류된다.

음.. 이렇게 정리되는게 맞으려나?




슈퍼키/super key
슈퍼키는 단독으로는 유일하게 구분할 수 없으나
복수개의 튜플을 이용하여 유일하게 구분할 수 있는 경우에 대한 키이다.

후보키/candidate key
후보키는 슈퍼키중 바꿀수 없는 항목을 의미한다.
어떻게 보면.. 슈퍼키에는 구분에 필요한 최소 튜플 이상이 포함되어 있을수 있는데
후보키에는 최소한의 튜플만 포함되는 식

후보키들은 유일성(uniqueness)과 최소성(minimality)를  만족해야 한다.
유일성 - 릴레이션에 있는 모든 투플에 대해 한가지 결과만 나와야 하고
최소성 - 복수개의 어트리뷰트로 구성시 모든 튜플이 유일하게 식별하는데 필요한 최소한의 어트리뷰트로 구성되어야 함
[링크 : http://hidingzz.tistory.com/733]

대리키/alternate key
대리는 기본키로 가능한 후보들 중에 키본키로 선택되지 않는 슈퍼키를 의미한다.

기본키/primary key
기본키는 유일하게 식별되는 하나의 튜플로 이뤄진 키이다.
테이블에서 유일한 값을 지니는 id나 시퀀스를 의미한다. (주민등록 번호나 고유 시리얼 번호)

외래키/foreign key
테이블-테이블의 관계에서 연관을 이어주는 값이다.
일반적으로 부모 테이블-자식 테이블이 있을경우(하위 연관성?)
자식 테이블에 부모 테이블의 기본키나 슈퍼키가 삽입되어 부모테이블과의 join을 통해
하나의 제대로 된 데이터를 추출하는데 쓰여진다.

[링크 : http://ko.wikipedia.org/wiki/키본_키] primary key
[링크 : http://ko.wikipedia.org/wiki/후보_키] candidate key
[링크 : http://ko.wikipedia.org/wiki/슈퍼_키] super key
[링크 : http://ko.wikipedia.org/wiki/대리_키] alternate key
[링크 : http://ko.wikipedia.org/wiki/외래_키] foreign key 




ACID는
원자성(Atomicity)
일관성(Consistency)
고립성(Isolation)
지속성(Durability)
의 약자로  DB 트랜잭션의 안전한 수행 보장을 위한 성질을 가르키는 약어인데..
튜플관련해서도 원자성/일관성 등은 나오니.. 묘하게 헷갈리는 기분... 
[링크 : http://ko.wikipedia.org/wiki/ACID ]

'Programming > 데이터베이스' 카테고리의 다른 글

데이터베이스 1:n 관계 구현  (0) 2016.02.29
CRUD  (0) 2014.05.17
카티젼 프로덕트, join  (0) 2014.04.26
database 1:N 구성?  (0) 2014.04.15
3-tier 구성?  (0) 2014.04.14
Posted by 구차니