관계형 데이터 모델은 전 세계에서 가장 널리 사용되는 데이터 모델입니다. 단순하면서도 효율적인 구조를 가지고 있어, 데이터를 최적의 방식으로 처리할 수 있는 강력한 기능을 제공합니다.
관계형 데이터 모델에서는 테이블(Table)을 사용하여 데이터를 관리합니다. 아래는 회사 직원 정보를 담고 있는 테이블의 예시입니다.
테이블 예시
<Employee>
| Emp_Number | Emp_Name | Emp_Designation | Emp_Age | Emp_Salary |
|---|---|---|---|---|
| 1 | Jack | Manager | 35 | 50000 |
| 2 | Tom | Technician | 25 | 25000 |
| 3 | Henry | Secretary | 50 | 30000 |
관계형 테이블의 주요 특징
위 Employee 테이블은 다음과 같은 특징을 가집니다.
- 튜플(Tuple) — 테이블의 하나의 행(row)을 의미합니다. 테이블 스키마에 따라 각 데이터의 세부 정보를 저장합니다.
- 컬럼(Column) — 데이터베이스의 열(column)은 동일한 형태의 데이터를 나타냅니다. 예를 들어 위 테이블에서 Name 컬럼은 모든 직원의 이름을 담고 있습니다.
- 관계형 스키마(Relational Schema) — 테이블 이름과 그 속성들을 정의합니다. 위 테이블의 스키마는 Employee(Emp_Number, Emp_Name, Emp_Designation, Emp_Age, Emp_Salary)와 같이 표현됩니다.
- 키(Key) — 테이블 내 모든 튜플을 고유하게 식별할 수 있는 속성입니다. Employee 테이블에서는 사원 번호(Emp_Number)가 매 직원마다 유일하므로 키 역할을 합니다.
제약 조건(Constraints)
모든 관계(relation)가 관계형 모델로 인정받으려면 반드시 지켜야 할 제약 조건들이 존재합니다. 대표적인 제약 조건은 다음과 같습니다.
- 키 제약 조건(Key Constraints) — 튜플을 고유하게 식별할 수 있는 속성 집합이 최소 하나 이상 존재해야 하며, 이 집합을 키(key)라고 부릅니다.
- 도메인 제약 조건(Domain Constraints) — 데이터베이스가 준수해야 하는 도메인별 규칙입니다. 예를 들어 직원의 급여는 음수일 수 없으므로, 급여 필드에는 양수 값만 입력할 수 있습니다.
- 참조 무결성 제약 조건(Referential Integrity Constraints) — 외래 키(foreign key)의 동작 방식을 정의하는 제약 조건입니다. 외래 키란 한 릴레이션의 키가 다른 릴레이션에서 참조되는 경우를 말합니다.