오늘은 관계형 데이터베이스에 관련된 용어를 알아보겠습니다.

속성(attribute)
- 테이블에서
열(column) 을 의미합니다.
- 각각의 열은 이름과 타입을 가지고 있습니다.
필드(Field) , 속성(attribute, 애트리뷰트) , 열(column , 컬럼) 등으로 불립니다.
- 위의 학생 릴레이션의 속성은 4개입니다.
튜플(tuple)
- 릴레이션에서
행(row) 를 의미합니다.
- 행은 관계된 데이터의 묶음 입니다.
행(row) , 튜플(tuple, 투플) , 레코드(record) 등으로 불립니다.
- 위의 학생 릴레이션의 튜플은 총 5개 입니다.
카디널리티(Cardianlity)
- 한 릴레이션 안에 있는
튜플(tuple)의 개수이다.
- 유효한 릴레이션은 카디널리티 0을 가질 수 있습니다. 릴레이션을 만들었지만, 아직 데이터를 넣지 않은 것과 같은 경우 입니다.
- 릴레이션의 카디널리티는 시간이 지남에 따라 계속해서 변화합니다. 데이터를 추가하고 삭제함에 따라 튜플의 수가 변하기 때문입니다.
- 위 릴레이션의 튜플은 5개 이므로 카디널리티는 5 입니다.
차수(degree)
- 한 릴레이션 안에 있는
애트리뷰트(attribute)의 수 입니다.
- 유효한 릴레이션의 최소 차수는 1 입니다. 즉 모든 릴레이션들은 한 개 이상의 속성(attribute, 애트리뷰트)를 가져야 합니다.
- 릴레이션의 차수는 자주 바뀌지 않습니다. 차수가 바뀌기 위해서는 릴레이션의 구조를 자체를 바꿔야 하므로 잘 변경 되지 않습니다.
-위 릴레이션의 속성의 수는 4개 이므로 차수는 4 입니다.
도메인(domain)
- 애트리뷰트가
가질 수 있는 값들의 집합을 도메인이라고 합니다.
- 하나의 도메인을 여러 속성에서 공유할 수도 있습니다.

- 위 student_tbl 릴레이션의 도메인은 VARCHAR(4), VARCHAR(20), VARCHAR(100), DATE 등이 있습니다.
참고
http://www.tcpschool.com/mysql/mysql_intro_relationalDB