관계 (Relationship)
테이블 간의 상호작용을 기반으로 설정되는 여러 테이블 간의 논리적인 연결
예를 들어, 쇼핑몰에서 주문이 들어왔을 때, 해당 주문이 어떤 고객이 주문했는지 알 수 있도록 주문 상품 정보와 고객 정보를 연결짓는 것
관계형 데이터베이스
- 데이터를 테이블, 행, 열 등으로 나누어 구조화하는 방식
- 자료를 여러 테이블로 나누어 관리하고, 테이블 간의 관계를 설정하여 여러 데이터를 쉽게 조작하도록 함
- SQL을 이용해 데이터를 조회 또는 조작할 수 있음
관계형 데이터베이스의 장점
- 데이터를 직관적으로 표현 가능
- 관련된 각 데이터에 쉽게 접근 가능
- 대량의 데이터도 효율적으로 관리 가능
RDB 기본 구조
- 스키마
- 테이블의 구조(Structure)
- 데이터베이스에서 자료의 구조, 표현 방법, 관계 등 전반적인 명세를 기술한 것
- 테이블
- 필드(열)와 레코드(행)를 사용해 조직된 데이터 요소들의 집합
- 관계(Relation)라고도 부름 a. 필드
기본 키(Primary Key, PK)
행에서 고유하게 식별 가능한 키
외래 키(Foreign Key, FK)
관계형 데이터베이스에서 한 테이블의 필드 중 다른 테이블의 행을 식별할 수 있는 키
- 참조하는 테이블에서 1개의 키에 해당하고, 이는 참조되는 측 테이블의 기본 키(Primary Key)를 가리킴
- 참조하는 테이블의 행 1개의 값은, 참조되는 측 테이블의 행 값에 대응
- 참조하는 테이블의 행에는, 참조되는 테이블에 나타나지 않는 값을 포함할 수 없음
- 참조하는 테이블 행 여러개가, 참조되는 테이블의 동일한 행을 참조할 수 있음
- 키를 사용하여 부모 테이블의 유일한 값을 참조(참조 무결성)
- 외래 키의 값이 반드시 부모 테이블의 기본 키일 필요는 없으나, 유일한 값이어야 함
데이터 무결성(Data Integrity)
- 데이터베이스 내의 데이터에 대한 정확성, 일관성을 보장하기 위해 데이터 변경 혹은 수정 시 여러 제한을 두어 데이터의 정확성을 보장하는 것
- 데이터베이스에 저장된 데이터의 무결성을 보장하고 데이터베이스의 상태를 일관되게 유지하는 것이 목적
- 데이터베이스나 RDBMS의 중요한 기능
- 무결성 제한의 유형 (무결성 : 데이터의 정확성 일관성)
- 개체 무결성(Entity Integrity)
- 참조 무결성(Referential Integrity)
- 범위 무결성(Domain Integrity)
참조 무결성(Referential Integrity)
데이터베이스 관계 모델에서 관련된 2개의 테이블 간의 일관성을 일컬음
외래 키가 선언된 테이블의 외래 키 속성(열)의 값은 그 테이블의 부모가 되는 테이블의 기본 키 값으로 존재해야 함