1. 데이터베이스 설계 사례
기업에서 흔히 볼 수 있는 작은 세계에 관한 요구사항
회사에는 다수의 사원들이 재직
각 사원에 대해서 사원번호(고유함), 이름, 직책, 급여, 주소 를 저장. 주소는 시, 구, 동으로 세분하여 나타냄
각 사원은 0명 이상의 부양가족을 가질 수 있음. 한 부양 가족은 두 명 이상의 사원에게 속하지 않음. 각 부양 가족에 대해서 부양가족의 이름과 성별을 저장
회사는 여러 개의 프로젝트들을 진행. 각 프로젝트에 대해서 프로젝트번호(고유함), 이름, 예산, 프로젝트가 진행되는 위치를 나타냄. 한 프로젝트는 여러 위치에서 진행될 수 있음. 각 프로젝트마다 여러 명의 사원들이 일함. 각 사원은 여러 프로젝트에서 근무할 수 있음. 각 사원이 해당 프로젝트에서 어떤 역할을 수행하고, 얼마 동안 근무 해 왔는가를 나타냄. 각 프로젝트마다 한 명의 프로젝트 관리자가 있음. 한 사원은 두 개 이상의 프로젝트의 관리자 가 될 수는 없음. 프로젝트 관리자 임무를 시작한 날짜를 기록
각 사원은 한 부서에만 속함. 각 부서에 대해서 부서번호 (고유함), 이름, 부서가 위치한 층을 나타냄
각 프로젝트에는 부품들이 필요. 한 부품이 두 개 이상의 프로젝트에서 사용될 수 있음. 하나의 부품은 다른 여러 개의 부품들로 이루어질 수 있음. 각 부품에 대해서 부품번호(고유함), 이름, 가격, 그 부품이 다른 부품들을 포함하는 경우에는 그 부품들에 관한 정보도 나타냄
각 부품을 공급하는 공급자들이 있음. 한 명의 공급자는 여러 가지 부품들을 공급할 수 있고, 각 부품은 여러 공급자들로부터 공급될 수 있음. 각 공급자에 대해서 공급자 번호(고유함), 이름, 신용도를 나타냄. 각 공급자에 대해서 그 공급자가 어떤 부품을 어떤 프로젝트에 얼마나 공급하는 가를 나타냄
논리적 데이터 모델
- 데이터베이스 관리 시스템의 종류에 따라 관계 데이터 모델(relational data model)
- 네트워크 데이터 모델(network data model), 계층 데이터 모델(hierarchical data model)
1:1 관계 타입
- 1:1 관계 타입의 예
1:N 관계 타입
N:M 관계 타입
- 논리적 N:M 관계
N:M 관계 타입
- 물리적 N:M 관계
ISA 관계
도메인 정의
- 도메인을 정의한 문장
CREATE DOMAIN DEMPNO int;
CREATE DOMAIN DEMPNAME varchar(30);
CREATE DOMAIN DSALARY int
- 도메인을 정의한 문장
CREATE TABLE EMPLOYEE(
empno DEMPNO,
empname DEMPNAME,
manager DEMPNO,
salary DSALARY
);
도메인 정의
- 도메인
•각 엔티티에서 속성들을 모아 리스트를 만든다.
•속성 이름이 여러 단어를 포함할 경우 분리
•마지막 단어를 기준으로 정렬
•여기까지는 용어 사전을 정의하는 것과 동일하다
'DB > 수업' 카테고리의 다른 글
22. 트랜잭션(11-2) (0) | 2017.07.04 |
---|---|
21. 트랜잭션(11-1) (0) | 2017.07.04 |
19. 데이터 베이스 설계와 ER 모델(10-1) (0) | 2017.06.27 |
10. 관계 대수와 관계 해석(5-2) (0) | 2017.05.21 |
9. 관계 대수와 관계 해석(5-1) (0) | 2017.05.21 |