본문 바로가기

STUDY/데이터베이스

데이터베이스 용어 정리

관계 데이터 모델의 개념
 relation : 2차원의 테이블 (스프레드 시트와 유사)
 record : relation의 각 행
 tuple : record를 좀 더 공식적으로 부르는 용어
 attribute : relation에서 이름을 가진 하나의 열
 domain : 한 attribute에 나타날 수 있는 값들의 집합. 프로그래밍언어에서 데이터 타입과 유사. 동일한 도메인이 여러 attribute에 사용될 수 있음. 도메인 정의 ex) CREATE DOMAIN EMPNAME CHAR(10); CREATE DOMAIN EMPNO INTEGER
 degree : 한 relation에 들어있는 attribute들의 수. 유요햔 relation의 최소 degree는 1.
 cardinality : relation의 tuple 수. 유효한 relation의 최소 cardinality는 0.
 relation schema : relation의 이름과 relationdml attribute들의 집합. relation 이름 (attribute 1, attribute 2, ..., N) -> 기본 키에는 밑줄을 그어 표현. intension이라고 부름.
 relation instance : relation에 어느 시점에 들어있는 tuple들의 집합. 일반적으로 relation에는 현재의 instance만 저장됨. extension이라고 부름.
 relation key : 각 tuple들 고유하게 식별할 수 있는 하나 이상의 attribute들의 모임.
   - super key : 한 relation 내의 특정 tuple을 고유하게 식별하는 하나의 attribute 또는 attribute들의 집합.
   - candidate key (후보키) : 각 tuple을 고유하게 식별하는 최소한의 attribute들의 모임. 모든 relation에는 최소한 한 개 이상의
     후보키가 있음. 후보키도 두개 이상의 attribute로 이루어질 수 있으며 이런 경우 composite key(복합키)라 부름.
   - primary key : 한 relation에 후보키가 두개 이상 있으면 설계자가 이들 중에서 하나를 primary key로 선정.
   - alternate key : 기본키가 아닌 후보키
   - foreign key : 어떤 relation의 primary key를 참조하는 attribute. relation들 간의 관계를 나타내기 위해 사용. foreign key
     attriibute는 참조되는 primary key와 동일한 DOMAIN을 가져야함.