관계형 데이터베이스 관리 시스템(RDBMS)
관계 또는 2차원 테이블을 사용하여 정보를 저장하는 데이터베이스
관계형 데이터베이스는 하나 이상의 테이블을 포함할 수 있고, 테이블은 기본 저장 구조로서 현실에 필요한 데이터를 보유할 수 있다.
테이블에 대한 액세스 경로를 지정하지 않으면 데이터가 물리적으로 배열되어 있는 방식을 알 필요가 없다.
데이터베이스에 액세스 하기 위해 SQL(ANSI 표준어) 문을 실행하고, SQL을 사용하여 데이터베이스 수정이 가능하다.
관계 분할과 결합을 위한 연산자 집합이 포함된다.
구성 요소
Data를 저장하는 객체(Entity) 또는 관계(Relation)의 모음이다.
다른 관계 생성을 위해 관계에 적용하는 연산자(Operators)의 집합이다.
정확성과 일관성을 위한 Data 무결성(Integrity)가 존재한다.
객체(Entity)
알려질 필요가 있는 정보에 대한 주요 사항이다.
속성(Attribute)
entity를 설명하거나 제한하는 사항이다.
각 속성은 필수적(Mandatory) 또는 선택적(Optional)이다.
관계(Relationship)
선택 가능성과 등급을 나타내는 객체 간의 명명된 연광성이다.
용어
고객 테이블이라 가정한다.
Row (== Tuple)
특정 고객에 대한 모든 데이터를 나타내는 행이다.
테이블에서 각 행들은 Primary Key로 식별되어야 하며 이때 Primary key는 중복될 수 없다.
행의 순서는 중요하지 않다.
Primary Key (기본 키)
고객 번호(고유함)를 포함하는 열 또는 속성이다. 고객 테이블에서 고유 고객을 식별하고, Primary Key는 반드시 값을 가지고 있어야 한다.
기본 키는 중복 값이 허용되지 않고 일반적으로 변경할 수 없다
Column
Key 값이 아닌 열이며 테이블에서 한 종류의 데이터를 나타낸다.
열의 순서는 중요하지 않다.
Foreign Key(외래 키)
테이블 관련 방식을 정의하는 열로, Foreign Key는 다른 테이블의 Primary Key 또는 Unique 한 값을 참조한다.
순수하게 논리적인 포인터 역할을 한다.
기존의 기본 키가 없다면 외래 키는 정의할 수 없다.
Field
필드는 행과 열이 교차하는 부분으로, 하나의 값만 넣을 수 있다.
null Value
필드에 값이 없는 경우 널 값이라고 한다.