1. 데이터베이스란?

한 조직의 여러 응용 시스템들이 공용하기 위해 통합, 저장한 운영데이터의 집합

통합된 데이터-최소의 중복, 통제된 중복

저장 데이터-컴퓨터가 접근 가능한 저장 매체(테이프, 디스크)에 저장

운영데이터-한 조직의 고유 기능을 수행하기 위해 필요한 데이터

공용데이터- 한 조직의 여러 프로그램이 공동으로 소유, 유지, 이용하는 데이터

2. DBMS의 필수기능

정의기능

데이터베이스의 구조를 정의하는 기능이다.

데이터베이스의 논리적, 물리적 구조와 이들 간의 사상을 명세하는 기능을 포함한다.

DDL(Data Definition Language)

데이터베이스 스키마를 컴퓨터가 이해할 수 있도록 기술하는 언어

개념 스키마, 외부 스키마를 기술한다.

create, alter, drop

조작기능

사용자가 데이터베이스를 접근하고 조작할 수 있게 지원하는 기능이다.

DML(Data Manipulation Language)

절차적 DML

what과 how를 명세, 한 번에 하나의 레코드를 처리

응용 프로그램 속에 삽입되어 사용

비절차적 DML

what만 명세, 한 번에 여러 개의 레코드 처리

독자적, 대화식 사용:커맨드 타입

select, insert, delete, update

제어기능

데이터의 정확성과 안정성을 유지관리

필수제어기능 - 무결성 유지, 보안 유지 및 권한 검사, 데이터 회복. 병행 수행 제어

DCL(Data Control Language)

공용데이터베이스 관리를 위한 데이터 제어를 기술

grant, revoke

3. DBMS의 독립성

데이터베이스는 다음과 같은 3단계 구조를 갖는다

외부스키마-프로그램의 데이터구조

개념스키마-데이터베이스의 논리적 구조

내부스키마-데이터베이스의 물리적 구조

외부 스키마와 개념 스키마 사이에는 논리적 구조사상(응용 인터페이스),

외부 스키마와 내부 스키마 사이에는 물리적 구조사상(저장 인터페이스)을

적용하여 데이터의 독립성을 획득한다.

4. 정보 모델링 방법(개념 스키마 모델링)

뷰통합방법-범위가 클때, 큰 개념에서 작은 개념으로, 하향식

부문별 뷰를 통합하여 하나의 전체적 개념 스키마를 구성

애트리뷰트 합성-범위가 작을 때, 큰 개념에서 작은 개념으로, 상향식

속성들을 식별 분류하여 하나의 개체와 관계성을 정의

5. 모델링

거래처(1)->(n)비디오1개

=> 거래처(1)----(n)비디오

거래처(1)<-(1)비디오1개

회원(m)<-(1)비디오1개

=> 회원(m)----(n)비디오

회원(1)->(n)비디오1개

지도교수(1)->(n)학생

=> 지도교수(1)----(n)학생

지도교수(1)<-(1)학생

교수(1)<-(n)강의

=> 교수(1)----강의(n)

교수(1)->(1)강의

학생(1)->(n)뫄목강의

=> 학생(m)----강의(n)

학생(m)<-(1)과목

데이터베이스 스키마는 릴레이션의 집합으로 표현

릴레이션은 속성들의 집합으로 표현되고 이름을 갖는다.

개체와 관계 모두 릴레이션으로 표현한다.

1:1, 1:n, m:n 모두 직접적인 표현이 가능하다.

m:n 관계는 반드시 릴레이션으로 표현

1:n의 관계를 속성으로 넣을 때, n쪽의 속성으로 변환한다.

6. 후보 키

유일성과 최소성을 만족하는 애트리뷰트 집합

유일성-키값은 하나의 튜플만을 식별

최소성-유일한 식별을 위해 꼭 필요한 속성만으로 구성

※후보키를 만족하는 것은 여러 개 있을 수 있다.

7. 기본 키

후보 키 중에서 선정한 키로 개체 무결성을 위하여 Null값을 갖지 않도록 설정한다.

8. 외래 키

릴레이션에 속한 속성이 다른 릴레이션의 기본 키인 속성

외래 키와 원본의 도메인은 일치하여야 한다.

9. 무결성 제약

개체 무결성-기본키는 Null값을 가질 수 없다.

참조 무결성-외래키값은 Null일 수 있으나, 참조 릴레이션의 기본키 값과 같아야 한다.

10. 릴레이션