2011년 3월 14일 월요일

[데이터베이스] 관계형데이터베이스

관계형 데이터 베이스를 구성하는 개체(Entity) 나 관계(Relationship)를 모두 릴레이션(Relation) 이라는
표(Table) 로 표현한다.  - Table = Entity = Relation

1. 관계형 데이터 베이스의 구조
 1) 튜플 (Tuple)
  - 릴레이션을 구성하는 각각의 행
  - 행(Row), 가로
  - 파일 구조에서 레코드와 같은 의미
  - 튜플의 수를 Cardinality 또는 기수, 대응수 라고 한다
 
  2) 속성 (Attribute)
   - 데이터베이스를 구성하는 가장 작은 논리적 단위
   - 열(Column) , 세로
   - 개체(Entity)의 특성
   - 속성의 수를 Degree 또는 차수 라고 한다

  3) 도메인 (Domain)
   - 하나의 Attribute 가 취할 수 있는 같은 타입의 원자 (Atomic) 값들의 집합
   - 실제 Attribute 값이 나타날 때 그 값의 합법 여부를 검사하는 데에도 사용


2. 릴레이션의 특징

 - 한 릴레이션에 포함된 튜플들은 모두 상이함 (유일성)
 - 한 릴레이션에 포함된 튜플 사이에는 순서가 없다
 - 모든 속성은 원자값
 - 속성은 릴레이션 내에서 유일한 이름을 가짐
 - 속성들간 순서 없음


릴레이션 = 파일                = 테이블
튜플          = 레코드            = 행
속성          = 필드, 아이템 = 열
릴레이션 차수         =         속성의 개수
카디널리티               =         튜플의 개수


3. 관계 데이터베이스의 제약조건

 1. 키(Key) 개념 및 종류
   - 키는 데이터 베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 튜플들을 서로 구분할수 있는 기준이 되는  Attribute

   1) 기본키 (Primary Key)
     - 후보키 중에 선택한 주 키 (Main Key)
     - 한 릴레이션에서 튜플을 유일하게 구별할 수 있는 Attribute
     - NULL 값을 가질수 없다
     - 후보키의 성질중  유일성, 최소성 을 모두 만족

    2) 외래키 (Foreign Key)
     - 한릴레이션 R1 의 기본키의 값들과 일치함을 요구하는 다른 릴레이션 R2 의 한 Attribute
  
    3) 후보키 (Candidate Key)
     - 기본키로 사용될 수 있는 Attribute
     - 후보키는 릴레이션에 있는 모든 튜플에 대해 유일성과 최소성을 만족시켜야 함
     - 유일성(Unique) : 하나의 키값으로 하나의 튜플만을 식별할 수 있어야 함
     - 최소성(minimality) : 모든 레코드들을 유일하게 식별하는 데 필요한 속성으로만 구성 되어야 함
   
    4) 대체키 (Alternate Key)
     - 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키


4. 무결성 (Integrity)
    - 권한이 부여된 사용자에 의하여 발생할 수 있는 데이터베이스의 오류를 방지하기 위함.
    - 데이터베이스를 정확하고 유효하게 유지


5. 무결성 제약조건
 
  1) 개체 무결성 제약조건
    - 한 릴레이션의 기본키를 구성하는 어떠한 속성 값도 NULL 값이나 중복값을 가질수 없음
  
  2) 참조 무결성 제약조건
    - 릴레이션 R1에 저장된 튜플이 릴레이션 R2 에 있는 튜플을 참조하려면 참조되는 튜플이 반드시 R2에 존재
    - 릴레이션은 참조할 수 없는 외래키를 가질 수 없음


  3) 도메인 무결성 제약조건
    -  속성값이 가질 수 있는 값의 범위를 벗어난 값은 가질 수 없다
    (예> 속성이 성별일 경우 도메인은 남,녀 를 벗어날 수 없다
 

5. 관계대수
   - 원하는 정보와 그 정보를 어떻게 유도하는가를 기술한 절차적인 방법
   - 주어진 관계로부터 원하는 관계를 얻기 위해 연산자와 연산규칙을 제공하는 언어
   - 피연산자와 결과가 모두 릴레이션이다
  - 질의에 대한 해를 구하기 위해 수행해야 할 연산의 순서를 명시한다

6. 순수 관계 연산자
   1) Project
     - 테이블에서 특정 속성에 해당하는 열을 선택하는데 사용
     - 릴레이션의 열(세로) 에 해당하는 Attribute를 추출 하는 것이므로 수직연산자라고도 함
     - 연산자의 기호는 파이

   2) Join
     - 공통 속성을 중심으로 두 개의 릴레이션을 하나로 합쳐서 새로운 릴레이션을 만드는 연산
     - 연산자 기호는 ▷◁
  
   3) Select
     - 릴레이션에 존재하는 튜플 중에서 선택 조건을 만족하는 튜플의 부분집합을 구하여 새로운 릴레이션을 생성
     - 릴레이션의 행(가로)에 해당하는 튜플을 구하는 것이므로 수평 연산자라고도 함
     - 연산자의 기호는 시그마 (δ)

댓글 없음:

댓글 쓰기