데이터베이스 과제#7 : 정규화 연습문제 풀이
과제 내용 ▣ 9장 연습문제(p386~387) 중 아래 문제를 풀이하라. ◈ 문제1, 문제2, 문제3, 문제4 ◈ 문제5 수정) 릴레이션R의 스키마가 다음과 같다. 여기서 A,B,C,D는 속성이라고 한다. 릴레이션R은 어떤 정규형에 속하는가? 또한 해당 정규형에 속하는 이유를 쓰시오. R(A, B, C, D) 함수적종속성: A->B, A->C, A->D, B->C 기본키: A ◈ 문제6 수정) 릴레이션S의 스키마가 다음과 같다. 여기서 A,B,C,D는 속성이라고 한다. 릴레이션S는 어떤 정규형에 속하는가? 또한 해당 정규형에 속하는 이유를 쓰시오. S(A, B, C, D) 함수적종속성: (A,B)->C, (A,B)->D, B->C 기본키: (A,B) ◈ 문제9 수정) 다음 릴레이션은 어떤 정규형인지 쓰고..
2020. 7. 14.
데이터베이스 과제#3
문제 1,2,3,4에 대해 각각 ER 다이어그램을 작성하라. 문제 5 임의의 요구사항을 작성하라. (문제 1,2,3,4처럼) 작성한 요구사항에 대해 ER 다이어그램을 작성하라. 문제 1. 전화 가입 관리 ▣ 전화 가입자를 관리하기 위해, 가입자 정보로는 주민등록번호, 이름, 주소를 관리한다. ▣ 각 가입자는 여러 개의 전화에 가입할 수 있지만, 각 전화에 대한 가입자는 2명 이상이 될 수 없다. ▣ 각 전화는 전화번호(전화별로 전화번호는 유일함)를 가지며, 가입자가 전화에 가입한 날짜가 관리되어야 한다. ▣ 각 전화는 여러 개의 부가서비스(예:로밍 서비스, 발신자번호표시 등)에 가입할 수 있다. ▣ 부가서비스는 이름과 월사용료를 가진다. 이 때, 부가서비스의 이름이 동일한 것은 없다고 한다. 문제 2. ..
2020. 7. 14.
데이터베이스 과제#2
6장 연습문제 ( p.196 ~ 199 ) 중 아래 문제 풀이 문제 1, 4, 5, 6, 7, 9, 11, 14, 15, 16 문제 19중 (1), (2), (3), (5) 문제 20중 (1), (2), (3) 6장 기출문제 ( p.200~ 206 ) 중 아래 문제 풀이 문제 23 문제 25, 30 : 답 이외에도, 해당 답의 이유도 함께 쓸 것 (문제는 쓰지 않아도 됨) 문제 1. 릴레이션의 A와 B가 합병 가능한지 여부를 판단하는 기준이 아닌 것은? 1. 두 릴레이션의 인스턴스가 동일해야 한다. 2. 두 릴레이션의 차수가 동일해야 한다. 3. 두 릴레이션의 대응하는 속성의 이름은 달라도 상관없다. 4. 두 릴레이션의 대응하는 속성의 도메인은 동일해야 한다. 답 : 1번 풀이 : 릴레이션의 인스턴스는 ..
2020. 7. 14.
데이터베이스 관계 대수 연산자 - 집합 연산자
▣ 집합 연산자 ◈ 릴레이션이 투플들의 집합이기 때문에 기존의 집합 연산이 릴레이션에 적용됨 ◈ 세 가지 집합 연산자: 합집합, 교집합, 차집합 연산자 ◈ 집합 연산자의 입력으로 사용되는 두 개의 릴레이션은 합병 가능(union compatible) 조건을 만족해야 함 ◈ 집합 연산자들은 두 개의 릴레이션을 입력으로 받아들이므로 이항 연산자 ▣ 합병가능(union compatible) 조건 ◈ 두 릴레이션 R1(A1, A2, ..., An)과 R2(B1, B2, ..., Bm)이 합병 가능할 필요 충분 조건은 n=m이고, 모든 1≤i≤n에 대해 domain(Ai) = domain(Bi) ◈ 즉, 두 릴레이션의 속성 수가 같고, 대응되는 속성의 도메인이 같다. ◈ 예1 고객(고객번호, 이름, 주소, 핸드폰..
2020. 7. 14.
데이터베이스 언어 & 사용자 & 구성
데이터베이스 언어 데이터 정의어(DDL, Data Definition Language) - 데이터 구조(스키마) 정의, 수정, 삭제 데이터 조작어(DML, Data Manipulation Language) - 데이터 검색,삽입,삭제,수정 데이터 제어어(DCL, Data Control Language) - 내부적으로 필요한 규칙이나 기법 정의 - 권한 부여 등을 통한 보안, 회복, 동시성 제어 등 가장 유명한 데이터베이스 언어 : SQL 데이터베이스 사용자 최종 사용자 (End User) 초보 사용자 - 이미 만들어진 응용 프로그램을 이용하여, 데이터를 다루는 업무를 하는 사람 - 자신이 DBMS를 이용하는지 알지 못한다. 캐주얼 사용자 - 데이터베이스 언어(예:SQL)를 사용하여 데이터 검색, 데이터 분..
2019. 12. 21.