CS/데이터베이스

[데이터베이스] 8. 관계 데이터 모델 (2)

JIN-JJS 2025. 3. 13. 19:14

1. 릴레이션 특성과 구성

1) 릴레이션이란?

• 데이터베이스에서 가장 기본적인 구조로, 테이블 또는 관계로 표현됨

• 행과 열로 구성된 2차원 테이블 형태로 데이터를 저장하고 조작할 수 있음

• 여러 릴레이션을 이용해 데이터베이스를 구성하고, 관계를 설정하여 효율적으로 데이터 조작 가능

 

2) 릴레이션의 구성

• 속성(Attribute): 테이블의 열, 저장되는 데이터의 종류와 형식을 정의

• 튜플(Tuple): 테이블의 행, 각 속성에 대한 실제 데이터 값을 포함

 

3) 릴레이션 구성 요소

• 속성: 여러 개의 속성으로 구성되며 정보의 특성을 나타냄 (예: 학생 릴레이션의 학번, 이름, 전공 등)

• 도메인: 속성이 가질 수 있는 값의 집합 (예: 학번 속성의 도메인은 정수 값)

• 튜플: 각 행은 튜플로 표현되며, 속성에 대한 실제 데이터 값 포함

• 관계: 릴레이션 간의 연관성을 나타냄 (예: 학생 릴레이션과 강의 릴레이션의 "수강" 관계)

• 기본키(Primary Key): 각 튜플을 고유하게 식별하는 속성(예: 학번)

• 외래키(Foreign Key): 다른 릴레이션의 기본키를 참조하는 속성(예: 학생 릴레이션의 수강 강의 참조)

 

4) 릴레이션 특성

• 유일성: 릴레이션 내 튜플들은 중복되지 않음

• 순서 없음: 튜플의 저장 순서는 중요하지 않음

• 원자성: 속성 값은 원자적으로 구성됨

• 도메인 제한: 각 속성은 미리 정의된 도메인 내 값만 가질 수 있음

• 속성 이름의 유일성: 속성의 이름은 동일 릴레이션 내에서 고유해야 함

 

5) 릴레이션의 구성 요소

• 릴레이션 스키마: 릴레이션의 논리적 구조로, 속성과 이름을 정의 (정적 특징)

• 릴레이션 인스턴스: 특정 시점의 튜플 집합 (동적 특징)

 

 

2. 무결성 제약

1) 무결성 제약이란?

• 데이터베이스의 정확성과 일관성을 보장하기 위해 저장, 삭제, 수정 등에 적용되는 규칙

• 여러 사용자가 동시에 데이터를 접근·조작할 때, 데이터의 무결성을 유지하는 역할

 

2) 무결성 제약 조건 종류

• 개체 무결성(Entity Integrity): 기본키는 중복되지 않고, NULL 값을 가질 수 없음

• 참조 무결성(Referential Integrity): 외래키는 참조하는 기본키와 일치해야 함

• 도메인 무결성(Domain Integrity): 속성 값의 범위나 형식을 제한

• 동시성 무결성(Concurrency Integrity): 다중 사용자 환경에서 데이터 충돌 방지

• 동작 무결성(Operation Integrity): 데이터 조작 시 일관성 유지 (예: 특정 조건을 만족하는 경우만 삭제 가능)

 

3) 무결성 제약 조건의 장단점

• 장점: 스키마 정의 시 한 번만 명시하면 DBMS가 자동으로 일관성 검사 수행

• 단점: 구현이 복잡하며, 제약 조건 간 충돌 가능

 

4) 릴레이션 무결성 제약

• 상태 변환 제약: 데이터베이스의 일관성 유지 조건

- 상태 제약: 데이터베이스가 일관성 있는 상태를 유지하는 조건

- 과도 제약: 한 상태에서 다른 상태로 변환 시 적용되는 규정

 

• 집합 여부 제약:

- 집합 제약: 튜플 집합 전체에 적용되는 규정

- 튜플 제약: 개별 튜플에 적용되는 규정

 

• 시간 측면 제약:

- 즉시 제약: 삽입, 삭제, 갱신 연산이 즉시 적용

- 지연 제약: 트랜잭션 완료 후 적용

 

5) 무결성 제약 조건 구현 방법

• DCL 활용: 데이터 정의 시 명시적으로 제약 조건 설정

• 트리거: 특정 조건 충족 시 자동 실행되는 규칙

• 저장 프로시저: 데이터 접근 및 보안, 성능 최적화를 위해 사용

• 응용 프로그램 코드: 애플리케이션 단에서 무결성 보장

• DBMS 자체 기능: ACID 원칙을 통한 동시성 제어 및 데이터 복구 지원


이 내용은 휴넷사회복지평생교육원의 데이터베이스 강의를 듣고 정리한 것입니다.