일반 집합 연산자 - 집합 연산은 수학적 집합 이론에서 사용하는 연산자로 릴레이션 연산에도 그대로 적용할 수 있다. - 집합 연산 중 UNION, DIFFERENCE, INTERSECTION을 처리하기 위해서는 합병 조건을 만족해야한다. ※ 합병 조건 : 합병하려는 두 릴레이션 간에 속성의 수가 같고, 대응되는 속성별로 도메인이 같아야한다. 즉, 릴레이션 R과 S가 합병 가능하다면, 릴레이션 R의 i번째 속성과 릴레이션 S의 i번째 속성의 도메인이 서로 같아야 한다. 속성의 이름이 같아야되는 것은 아님. - 두 릴레이션 R과 S가 있을 때 각 집합 연산의 특징 연산자 기능 및 수학적 표현 카디널리티 합집합 UNION 연산 기호 : ∪ - 두 릴레이션에 존재하는 튜플의 합집합을 구하는 연산 - 결과로 생성..
SELECT - 릴레이션에 존재하는 튜플들 중에서 특정 조건을 만족하는 튜플들의 부분집합을 구하여 새로운 릴레이션을 만든다. - 릴레이션의 행에 해당하는 튜플을 구하는 것으로, 수평 연산이라고도 한다. - SELECT 연산의 기호는 그리스 문자 시그마(σ)이다. - 표기 형식 : σ(조건)(R) · R은 릴레이션 · 조건에서는 =, ≠, , ≥ 등의 기호를 사용한 비교 연산이 허용, AND(∧), OR(∨), NOT(ㄱ) 등의 논리 연산자를 사용하여 여러 개의 조건들을 하나의 조건으로 결합시킬 수도 있다. PROJECT - 주어진 릴레이션에서 속성 리스트에 제시된 속성 값만을 추출하여 새로운 릴레이션을 만든다. 단, 연산 결과에 중복이 발생하면 중복이 제거된다. - 릴레이션에서 열에 해당하는 속성을 추출..
관계대수(Relational Algebra) - 관계형 데이터베이스에서 원하는 정보와 그 정보를 어떻게 유도하는가를 기술하는 절차적 언어. - 하나 또는 두 개의 릴레이션을 입력으로 받아들여 결과로서 새로운 릴레이션을 생성해내는 연산자들의 집합. - 연산에는 기본 연산인 SELECT, PROJECT, JOIN, DIVISION 등과 집합 연산인 UNION, DIFFERENCE, INTERSECTION, CARTESIAN PRODUCT 등이 있다. 관계해석(Relational Calculus) - 관계 데이터 모델의 제안자인 코드(E. F. Codd)가 수학의 Predicate Calculus(술어해석)에 기반을 두고 관계 데이터베이스를 위해 제안. - 관계 데이터의 연산을 표현하는 방법으로, 원하는 정보..
무결성(Integrity) - 데이터베이스에 저장된 데이터 값과 그것이 표현하는 현실 세계의 실제 값이 일치하는 정확성을 의미 - 무결성 제약 조건(Constraint)은 데이터베이스에 저장된 데이터의 정확성을 보장하기 위해 정확하지 않은 데이터가 데이터베이스 내에 저장되는 것을 방지하기 위한 제약조건을 말한다. NULL 무결성 - 릴레이션의 특정 속성 값이 NULL이 될 수 없도록 하는 규정 고유(Unique) 무결성 - 릴레이션의 특정 속성에 대해 각 튜플이 갖는 속성 값들이 서로 달라야 한다는 규정 예시 : 릴레이션의 기본키인 고객번호 속성에는 동일한 값이 존재하지 않으므로 고유(Unique) 무결성을 만족한다. 도메인(Domain) 무결성 - 특정 속성의 값이 그 속성이 정의된 도메인에 속한 값이..
키(Key) - 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때, 기준이 되는 속성을 말한다. 슈퍼키(Super Key) - 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키. 릴레이션을 구성하는 모든 튜플 중 슈퍼키로 구성된 속성의 집합과 동일한 값은 나타내지 않는다. - 릴레이션을 구성하는 모든 튜플에 대해 유일성(Unique)은 만족하지만, 최소성(Minimality)은 만족하지 못한다. 예시 : 릴레이션에서는 학번, 주민등록번호, (학번, 주민등록번호), (학번, 주민등록번호, 이름) 등이 슈퍼키이다. 후보키(Candidate Key) - 릴레이션을 구성하는 속성들 중에서 튜플을 유일하게 식별하기 위해 사용되는 속성들의 부분집합. - 유일성과 최소성을 모두 만족. 예시 : 릴레..
릴레이션 스키마(Relation Schema) - 릴레이션의 이름, 각 속성의 이름과 타입, 그리고 속성 값의 도메인을 정의하는, 즉 릴레이션에 데이터를 넣을 수 있도록 하는 릴레이션 틀이다. - 릴레이션 스키마를 릴레이션 스킴 또는 릴레이션 내포(Relation Intension)라고도 한다. 릴레이션 인스턴스(Relation Instance) - 어느 시점의 릴레이션에 들어 있는 튜플들의 집합 -릴레이션 인스턴스를 단순히 릴레이션 또는 릴레이션 외연(Relation Extension)라고도 한다. 속성(Attribute) - 릴레이션에서 디그리(Degree)는 4 - 디그리(Degree) = 속성의 수 = 차수 튜플(Tuple) - 릴레이션에서 카디널리티는 4 - 카디널리티 = 튜플의 수 = 기수
식별 관계(Identifying) - 개체 A, B 사이의 관계에서 A 개체의 기본키가 B 개체의 외래키이면서 동시에 기본키가 되는 관계 - B 개체의 존재 여부가 A 개체의 존재 여부에 의존적인 경우에 발생, ER 도형에서 식별 관계는 실선으로 표시 비식별 관계(Non-identifying) - 개체 A, B 사이의 관계에서 A 개체의 기본키가 B 개체의 비기본키 영역에서 외래키가 되는 관계 - B 개체의 존재 여부는 A 개체의 존재 여부와 관계없이 존재 - 일반적으로 두 개체는 비식별 관계로 존재하는 경우가 많으며, ER 도형에서 점섬으로 표기
관계형 데이터 모델 - 데이터를 테이블(Table) 또는 릴레이션(Relation)의 구조로 표현하는 논리적 데이터 모델 관계형 데이터 구조 : 릴레이션(Relation) - 데이터를 원자 값(Atomic Value)으로 갖는 이차원의 테이블로 표현하는데, 이를 릴레이션(Relation)이라 한다, - 릴레이션 구조는 물리적인 저장 구조를 나타내는 것이 아닌 논리적 구조이므로 다양한 정렬 기준을 통하여 릴레이션으로 표현할 수 있다. - 릴레이션은 구조를 나타내는 릴레이션 스키마(Relation Schema), 실제 값들인 릴레이션 인스턴스(Relation Instance)로 구성된다. - 릴레이션의 열(Column)을 속성(Attribute)이라 하고, 행(Row)을 튜플(Tuple)이라 한다. - 릴레..
ER(Entity Relationship) 모델 - 개념적 데이터 모델의 가장 대표적인 것으로, 1976년 피터 첸(Peter Chen)에 의해 제안 - ER 모델은 개체, 속성, 관계 등에 대하여 용이하게 표현할 수 있는 ER 도형(ERD, Entity Relationship Diagram)으로 정의 ER(Entity Relationship) 도형 개체 및 개체 타입 - 개체는 현실 세계의 객체로서 유형 또는 무형의 정보 대상으로 존재하고 서로 구별될 수 있는 것을 뜻하고 개체의 특성을 나타내는 속성을 갖는다. - 하나의 개체를 개체 어커런스(Entity Occurrence) 또는 개체 인스턴스(Entity Instance)라 하고, 개체 어커런스들의 집합에 대한 공통의 특성들을 갖는 개체 클래스를 개..
데이터베이스 설계 - 데이터베이스의 구조, 즉 데이터베이스 스키마(Database Schema)를 개발하는 과정 - 요구 조건 분석(Requirement Analysis), 개념적 설계(Conceptual Design), 논리적 설계(Logical Design), 물리적 설계(Physical Design), 데이터베이스 구현(Database Implementation)의 단계를 순서대로 반복하여 수행 - 데이터베이스 설계 시에는 데이터베이스의 구조에 치중하는 데이터 중심(Datadriven) 설계와 데이터 처리 및 응용에 치중하는 처리 중심(Processing-driven) 설계를 병행 · 요구 조건 분석(Requirement Analysis) : 사용자의 요구 조건을 수집하고 분석함으로써 공식적인 요구..