2020. 5. 17.

[방통대](데이터베이스시스템) 과제물 데이터베이스 설계


목 차

1. 파일 처리 시스템의 문제점 ------ 2

2. 데이터 모델링 ---------------- 3
 
- 2.1. ER 다이어그램
- 2.2. 관계형 모델
- 2.3. 관계대수식
- 2.4. SQL문
 
문제1) 파일 처리 시스템의 4가지 문제점에 대하여 설명하시오.(10)
파일 처리 시스템이란 파일을 사용하여 데이터를 관리하는 방식입니다. 여러 파일에 레코드를 기록하고 레코드를 조작하기 위한 별도의 프로그램을 필요로 합니다.
파일 처리 시스템의 4가지 문제점
 
- 데이터의 종속성
파일 처리 시스템에서는 파일들이 특정 프로그램에 종속됩니다, 특정 프로그램을 사용하지 않고 다른 프로그램으로 바꾸게 되면 데이터의 논리적인 위치나 구조를 변경하는 유지보수 비용이 크게 소모됩니다. 또한, 다른 프로그램들과의 데이터 공유도 매우 어렵게 됩니다.
이러한 문제를 해결하기 위해서는 데이터와 프로그램은 독립적으로 관리하여야 합니다. 이런 성질을 데이터의 독립성이라고 합니다. 데이터를 효율적으로 사용하기 위해서는 데이터의 독립성을 유지해줘야 합니다. 대표적으로 파일 관리 시스템인 DBMS를 현재에는 많이 사용하고 있습니다. DBMS를 활용하면 논리적 데이터 독립성, 물리적 데이터 독립성 문제를 동시에 해결 할 수 있습니다.
 
- 데이터의 무결성 훼손
데이터베이스에서 관리되는 데이터가 정확하다는 것을 보장하는 것을 말합니다. 무결성 훼손은 하나의 사실을 표시하는 두 개 이상의 중복되는 데이터가 서로 일치하지 않는 경우가 발생할 수 있습니다. 중복이 발생하지 않는 때에도 부정확한 데이터가 데이터베이스에 저장될 수 있습니다. 또한, 제약조건을 이용하여 데이터의 값을 표현하기가 매우 어렵습니다. 관련된 프로그램마다 손수 데이터를 변경하고 제약조건을 추가하는 매우 번거롭고 복잡한일이 발생하게 됩니다.
데이터의 무결성을 유지하기 위해 중앙통제에 의한 갱신을 하는 것입니다. 하지만 이 방법도 모든 갱신처리 작업에 필수적으로 검증을 거쳐야하는 번거로움이 있습니다.
 
- 동시 접근 이상
여러 사용자의 요청 작업을 동시에 처리하는 도중에 비정상적인 데이터의 수정이 일어날 수 있습니다. 이러한 예측 불가능한 값이 발생하는 문제를 막기 위해서는 시스템에서 데이터의 접근에 대한 통제를 가해야 합니다. 하지만 사전 협의가 이뤄지지 않은 경우에는 이러한 제어가 쉽지 않다는 것입니다.
DBMS는 트랜잭션이라는 단위로 사용함으로써 동시 접근 기능을 제공합니다.
 
- 데이터의 중복
파일 처리 시스템을 사용하여 데이터를 운용하는 경우에는 프로그램이 사용하는 정보가 중복되어 여러 파일에 저장 될 수 있습니다. 이러한 문제를 데이터의 중복성이라고 합니다.
데이터의 중복성은 일관성 문제, 보안성 문제, 경제성 문제를 초래합니다.
일관성문제란 하나의 사실을 나타내는 여러 개의 데이터가 존재할 때, 모든 데이터의 값이 같은 것을 말합니다. 물리적으로도 서로 다른 장소에 위치하는 상황이 온다면 일관성을 유지하기 어려워질 수 있습니다. 이러한 문제로 인해 데이터의 내용들이 불일치가 발생하게 되는 문제를 비일관성이라고 합니다.
보안성 문제는 동등한 내용의 데이터에 대해서는 똑같은 수준의 보안이 유지되어야 한다는것인데 같은 데이터가 중복되어 저장되는 경우, 동일한 수준의 보안을 유지하기가 매우 어렵다는 것입니다.
경제성 문제는 데이터를 중복 저장하기 위해서 추가적인 저장 공간을 구비함으로써의 비용이 발생한다는 것입니다. 또한, 모든 파일에 일관성을 유지하기 위한 시스템 갱신비용이 상당히 높아지는 문제점을 가지고 있습니다.
 
 
문제2) 다음은 병원의 입원환자 관리 시스템에 대한 사용자 요구 사항이다.
 
환자에 대하여 이름, 환자번호, 주민번호, 주소를 관리한다.
의사에 대하여 이름, 의사번호, 진료분야를 관리한다.
한 환자는 한명의 의사에게서만 진료를 받을 수 있다.
모든 환자는 반드시 의사에게 진료를 받아야 한다.
한 의사는 여러명의 환자를 진료할 수 있으며 진료를 하지 않는 의사가 있을 수 있다.
 
 
2-1. 위 요구사항에 대하여 개체-관계(E-R) 다이어그램을 작성하시오. (5점) (키 속성, 사상수, 참여제약조건 등을 반드시 명시하시오)
 

 
2-2. 2-1의 개체-관계(E-R) 다이어그램을 관계형 모델로 변환하시오. (5점)
 

2-3. 2-2에서 작성된 관계형 모델에서 “이름이 ‘유명의’인 의사가 진료하고 있는 환자의 이름과 환자번호를 출력하라”에 대한 관계대수 식을 작성하시오. (5점)
 
π환자이름,환자번호(σ의사이름='유명의'(환자환자.환자번호=진료.환자번호(진료)and진료의사.의사번호=진료.의사번호(의사)))

 
2-4. 2-3에서 작성한 관계대수식을 SQL로 변환하시오.(5점)
 
select 환자.환자이름, 환자.환자번호
from 환자,의사, 진료
where 환자.환자번호 = 진료.환자번호
and 진료.의사번호= 의사.의사번호
and 의사.의사이름='유명의';
 
출처 : 방송통신대학교재, 데이터베이스시스템

댓글 없음:

댓글 쓰기