방통대 데이터베이스 수업 내용을 정리했습니다.


1. 관계형 모델

 - 논리적 데이터 모델링 : 특정 DBMS에서 사용하는 데이터 모델에 맞추어 데이터를 표현하는 과정

 - 데이터 정의 언어로 기술된 논리스키마 생성

 - 1969년 에드가 F 코드에 의해 제안, 릴레이션으로 데이터를 표현하는 모델

 - 컬럼, 속성, 필드 / 레코드, 튜플

 

 - 릴레이션의 특징 : 레코드의 유일성, 레코드의 무순서성, 컬럼의 무순서성, 컬럼값의 원자성


 - 관계형 모델의 제약조건 : 영역제약, 키 제약, 개체 무결성 제약, 참조 무결성 제약


 - 키의 종류 및 속성 : 슈퍼키, 후보키, 기본키, 외래키


 

2. ER 다이어그램 변환

 - N 쪽에 외래키가 위치한다.


3. 관계 대수

 - 관계연산의 개념 : 관계형 모델을 기반으로 구성된 릴레이션을 사용하여 새로운 릴레이션을 생성하는 표현

 - 사용자의 관점에서 필요한 새로운 릴레이션을 정의하는 방법

 - 관계대수 : 주어진 릴레이션에서 필요한 릴레이션을 만드는 연산자로 구성(관계 연산의 과정표현)

              셀렉트연산(가로 추출), 프로젝트 연산(세로 추출)


 - 관계해석 : 원하는 릴레이션에 포함되는 레코드의 조건을 정의하는 방식(관계연산의 결과표현)


 - 조인 연산자 : 두 릴레이션에서 조건을 만족하는 레코드를 결합한 레코드로 구성된 릴레이션을 생성

 - 집계함수연산 : 집계 함수를 값들의 집합 또는 레코드의 집합에 적용하는 연산




연습문제 


1. 다음 중 빈칸에 들어가야하는 용어로 맞지 않는 것은? 3번 애트리뷰트X -> 레코드

2. 한 릴레이션을 구성하는 컬럼 사이에는 순서가 없고 이름과 값의 쌍으로 구성된다 : 컬럼의 무순서성

3. 두 개의 릴레이션 사이에 명시되는 제약조건으로 한 릴레이션에 있는 레코드가 다른 릴레이션에 있는

레코드를 참조하려면 반드시 존재하는 릴레이션만 참조해야 한다는 제약조건을 명시한다 : 참조 무결성 제약조건

4. 다음의 ER 다이어그램을 관계형 모델로 올바르게 변환한 것은? 1번, N쪽에 외래키가 위치한다.

5. 강좌명이 요가인 강좌의 강좌번호, 강좌명, 강사번호를 출력하시오 : 시그마 강좌명

6. 홍길동 강사의 종목을 출력하시오에 대한 관계 대수 연산식은? 2번 (n종목(강좌 ~)



정리하기


관계형 모델은 테이블의 집합체에 기반을 두고 있다. 릴레이션은 속성들로 이루어진 테이블을 의미한다. 

레코드는 릴레이션의 각 행을 의미하며, 속성은 각 열을 의미한다. 이때 릴레이션 스키마란 어떠한 

테이블에서 사용되는 속성과, 속성이 지니는 데이터 타입을 정의한 것을 의미한다. 


기본키는 한 데이터베이스 내에서 레코드를 유일하게 판별할 수 있는 속성을 말하며, 

카디널리티는 레코드의 개수를 의미한다. 키의 종류로는 기본키, 후보키, 수퍼키 등이 있다. 


개념적 모델링 단계, 즉 고수준의 추상적인 ER 모델링의 결과를 토대로 실제 상용 DBMS상의 데이터베이스를

 만들려면 각 DBMS에 맞는 구현 데이터 모델로의 변환이 필요하다. 이러한 변환 과정을 논리적 데이터 

모델링이라고 한다. 


ER 모델에서 관계 데이터 모델로의 변환 시 보통 개체는 릴레이션으로, 약한 개체 집합의 경우 강한 

개체의 키를 약한 개체의 부분키와 합쳐서 기본키로 갖는 릴레이션으로 변환 가능하다. 


ER 모델에서 관계 데이터 모델로의 변환 시 일대일 사상수를 가지는 관계는 참여하는 두 릴레이션 중에

어느 하나의 릴레이션에만 다른 릴레이션의 기본키를 참조하는 외래키 속성을 추가하는 것으로 변환 

가능하다. 또한 다대일 관계의 경우 다 쪽 릴레이션에 일 쪽의 기본키를 참조하는 외래키를 기본키로 

갖도록 변환해 준다. 다대다 관계의 경우 관계 릴레이션을 별도로 생성하여 관계에 

두 릴레이션의 기본키를 각각 참조하는 외래키로 구성하고, 이 두 외래키를 기본키로 갖게 하는 방법으로

변환 가능하다. 


관계 데이터베이스에서는 관계 대수라는 절차적 질의 언어를 사용할 수 있다. 관계 대수 연산에서 

릴레이션에 대한 집합 연산으로는 셀렉트, 프로젝트, 합집합, 교집합, 차집합, 카티션 프로덕트 연산 

등이 있다. 


관계 대수의 또 다른 연산은 자연 조인, 할당 연산자 및 프로젝트 연산과 SUM, AVG, MAX, MIN, COUNT와 

같은 집계 함수가 있다. 


+ Recent posts