STUDY/자격증

DB 키(Key), 관계 데이터 연산 (정보처리기사 / 산업기사 실기)

NightOwl 2018. 9. 27. 07:00
728x90




키(Key) 개념 및 종류

 키란 관계 데이터베이스에서 튜플을 식별하기 위해 사용하는 속성이나 속성의 집합이며 데이터 베이스 참조 또는 검색에 사용된다.


 1) 후보키 Candidate Key

  - 릴레이션에서 각 튜플을 유일하게 식별할 수 있는 속성

  - 유일성 최소성 만족


 2) 기본키 Primary Key

  - 후보키 중에서 특별히 선택한 키

  - 중복 될 수 없으며 Null값, 공백이 올 수 없다

  - 후보키의 특징 (유일성 최소성 만족)


 3) 대체키 Alternate Key

  - 후보키 중에서 기본키를 제외한 나머지 속성들


 4) 외래키 Foreign Key

  - 하나의 테이블에서 원하는 자료를 얻지 못하는 경우 다른테이블을 참조하기 위해 사용

  - 외래식별자 라고도 하며 다른(참조) 릴레이션의 기본키와 같아야 한다

  - Null값이 올 수 있다


 * 식별 관계와 비식별 관계

 - 식별관계 : 외래키가 기본키인 경우

 - 비식별관계 : 외래키가 일반 속성인 경우


 5) 슈퍼키 Super Key

 - 튜플을 식별할 수 있는 후보키와 다른 속성들과의 모든 조합

 - 유일성 만족하지만 최소성 만족하지 않음




무결성 제약조건


 제약조건은 정확성과 안정성을 유지하기 위한 조건이다.


* 정합성

 : 어떤 데이터들의 값이 서로 일치하는 성질이며, 데이터가 서로 일관되게 일치해야 하며 데이터 중복이 많아지면 데이터 정합성을 맞추기 어려워진다. 무결성의 의미와는 다르다. (무결성보다 작은 범위)


 1) 개체 무결성

 - 기본키는 null값이 올 수 없고, 중복 될 수 없는것을 나타내는 제약조건

 - 개체를 식별하기 위해 오류가 없도록 함


 2) 참조 무결성

 - 외래키는 null 값이 올 수 있으며, 참조 릴레이션의 기본키와 같아야하는 제약조건

 - 테이블 참조시 오류가 없도록 함


 3) 도메인 무결성

 - 릴레이션에서 속성값의 범위가 정의된 경우 속성값이 정해진 범위 이내의 값을 따라야하는 제약조건

 - 동일한 속성에 대해 데이터타입, 길이가 동일해야 함


 4) 고유 Unique 무결성

  - 특정 속성에 대해 고유한 값을 가질때 그 속성값은 모두 달라야하는 제약조건


 5) Null 무결성

  - 특정 속성값이 null이 될 수 없도록 하는 제약조건


 6) 키 무결성

  - 한 릴레이션에는 적어도 하나의 키가 존재해야한다는 제약조건






관계 대수 Relational Algebra


 관계 대수는 릴레이션을 가지고 원하는 결과를 얻기위해 연산자를 표현하는 방법이다. 결과를 얻기 위한 절차를 표현하고 있기에 절차적 언어라고 한다. 

1. 셀렉트 SELECT

 1) 수평적 부분 집합(튜플)을 구하기 위한 연산

 2) 셀렉트 수행시 결과는 조건을 만족하는 튜플로 테이블이 만들어져 출력된다

 3) σ 시그마로 표현 

  표현 방법. σ<선택조건>(릴레이션이름) 

 


2. 프로젝트 PROJECT

 1) 수직적 부분 집합(속성의 값)을 구하기 위한 연산

 2) π 파이로 표현

  표현 방법.  π <추출속성리스트>(릴레이션이름)  

 3) 프로젝트된 릴레이션에서는 중복되는 튜플을 제거하는것에 주의 



3. 조인 JOIN

 1) 두 테이블에서 조건에 맞는 관련 튜플을 하나로 결합하여 하나의 테이블로 만드는 연산

 2) 동일조인 Equi join, 자연조인 Natural join, 외부조인 Outer join, 세타 조인 Theta join 의 종류가 있다

 3) ⋈ 보우타이 기호로 표현

  표현 방법.  릴레이션1 <조인조건>릴레이션2

 

 * 동일 조인 Equi join

  - 관계 연산자 중 '=' 연산자만을 사용하여 조건을 표현

  - 두 테이블의 모든 속성을 합한 하나의 테이블이며 중복 속성도 모두 표현


 * 세타 조인 Theta join

  - 관계 연산자를 통틀어 세타 연산자라고 한다


 * 자연 조인 Natural join 

  - 가장 일반 적으로 사용

  - 동일 조인한 결과에서 중복되는 속성을 제거하여 표현


 * 외부 조인 Outer join

  - 조인 시 두 릴레이션 간에 조건에 맞지 않는 튜플도 결과 테이블에 포함시켜 조인

  - 자료가 없는 부분은 Null 값으로 표현



4. 디비전 Division

 1) 두 릴레이션 'A DIVISION B' 이면 B테이블의 조건을 만족하는 튜플들을 A에 추출

 2) ÷ 나눗셈 기호 이용

  표현 방법.  릴레이션1<릴레이션1속성÷릴레이션2속성>릴레이션2






관계 해석 Relational Calculus


 관계해석의 결과는 관계대수의 결과와 같다. 릴레이션에서 연산자 없이 결과를 얻는 과정을 표현하는 것으로 비절차적 언어이다. 튜플 관계해석과 도메인 관계해석의 종류가 있다.

표현 방법.  {결과값|조건}




728x90