- insert into beers values ('Exfeel', 'HiteBeer');
insert into beers values ('Carlsberg', 'HiteBeer');
insert into beers values ('Cass', 'CassBeer');
insert into beers values ('OBLager', 'CassBeer');
- 결과는 <그림 1-2> 참조 (화면 캡쳐)
5) beers table에 Instance values이 제대로 삽입되었는지 확인하는 SQL 문장.
- select * from beers;
- 결과는 <그림 1-2> 참조 (화면 캡쳐)
6) 각 형별로 제시된 문제
문제1. 맥주에 대한 모든 정보를 구하시오.
- SQL 문장 : select * from beers;
- 결과는 <그림 1-3> 참조 (화면 캡쳐)
문제2. HiteBeer 회사에서 제조하는 맥주의 이름을 구하시오.
- SQL 문장 : select name from beers where manf = HiteBeer;
- 결과는 <그림 1-3> 참조 (화면 캡쳐)
문제3. CassBeer 회사에서 제조하는 맥주의 개수를 구하시오.
- SQL 문장 : select count(*) from beers where manf = 'CassBeer';
- 결과는 <그림 1-3> 참조 (화면 캡쳐)
6) 결과 화면(화면 캡쳐) :
과제 1. A 아기용품 대여점의 데이터베이스 구축을 위한 요구 조건은 아래와 같다.
아기 용품을 대여해주는 대리점 데이터베이스를 구축하고자 한다.
고객은 여러 아기 용품을 대여할 수 있고 아기 용품은 여러 고객에 의해 대여될 수 있다. 대리점은 여러 체인점을 가지고 있으며 체인점의 직원은 여러 명이며, 직원은 하나의 체인점에서만 근무할 수 있는 것으로 한다. 한명의 직원이 서비스하는 고객은 여러 명이며 고객은 한명의 직원에 의해서만 서비스 받는 것으로 한다. 또한, 하나의 체인점에서 관리되는 아기 용품은 여러 개이며 하나의 아기 용품은 여러 체인점에서 고객들에게 대여될 수 있다.
※ 각 Attribute의 Data type은 사용자가 알아서 정의하며, instance 삽입시 대여 요금은 원단위로 삽입한다. 단, 대여요금은 한달 기준이다.
2. 관계(relationship) 요구사항
1) 고객(customer)과 아기용품(layette) 간에 다대다 관계
2) 체인점(branch)과 아기용품(layette) 간에 다대다 관계
3) 체인점(branch)과 직원(emp) 간에 일대다 관계
4) 고객(customer)과 직원(emp)간에 다대일 관계
3. ER-Win 툴을 사용하여 E-R 다이어그램 표현
4. 테이블과 Instance values 삽입 SQL 문장
5. 문제 (단, 문제에서 요구하는 데이터값이 출력될 수 있도록 instance를 삽입하여, 해당 질의문 결과를 출력한다. 예: ‘공릉점’,‘유모차’)
1) 아기용품 테이블의 모든 아기용품번호, 아기용품명, 수량을 출력한다.
2) 체인점 테이블에서 체인점번호, 체인점이름, 체인점주소를 출력한다. 단, 질의 결과 ‘공릉점’ 정보만 출력되도록 한다.
3) 대여한 고객의 고객이름과 아기용품명을 출력한다. 테이블명 참조를 단축하기 위해 테이블 별명을 사용한다.
4) 각 고객번호별 대여요금의 합에 25.9%을 곱한 것과 고객번호를 출력한다. 테이블명 참조를 단축하기 위해 테이블 별명을 사용한다.
5) ‘공릉동‘ 지점에서 ‘유모차’를 대여한 고객의 고객이름, 고객주소, 대여요금, 아기용품명, 체인점이름을 출력한다. 테이블명 참조를 단축하기 위해 테이블 별명을 사용한다.
과제 2. B 종합학원의 데이터베이스 구축을 위한 요구 조건은 아래와 같다.
종합학원의 데이터베이스를 구축하고자 한다.
고객은 여러 과목을 수강할 수 있으며, 한 과목을 수강하는 고객은 여러 명이다. 직원은 여러 과목을 강의할 수 있으며 같은 과목 또한 여러 직원에 의해 강의될 수 있다. 한 지점의 직원은 여러 명이며 한명의 직원은 하나의 지점에만 근무할 수 있는 것으로 한다. 또한 지점에서 관리하는 고객은 여러 명이며 한명의 고객은 하나의 지점에서 관리하는 것으로 한다.
※ 각 Attribute의 Data type은 사용자가 알아서 정의하며, instance 삽입 시 수강금액은 원단위로 삽입한다. 단, 수강금액은 한달 기준이다.
2. 관계(relationship) 요구사항
1) 고객(customer)과 개설과목(lesson)간에 다대다 관계
2) 개설과목(lesson)와 직원(emp) 간에 다대다 관계
3) 지점(branch)과 직원(emp) 간에 일대다 관계
4) 고객(customer)과 지점(branch) 간에 다대일 관계
3. ER-Win 툴을 사용하여 E-R 다이어그램 표현
4. 테이블과 Instance values 삽입 SQL 문장
5. 문제 (단, 문제에서 요구하는 데이터값이 출력될 수 있도록 instance를 삽입하여, 해당 질의문 결과를 출력한다. 예: ‘영어1’, ‘강현주’, ‘수학1’)
1) 고객 테이블상의 모든 고객번호, 고객이름, 고객주소를 출력한다.
2) 개설과목 테이블에서 과목번호, 과목명, 수강금액을 출력한다. 단, 질의 결과 과목명이 ‘영어1’인 행만 출력되도록 한다.
3) 모든 직원의 직원 이름과 각 직원이 강의하는 과목명을 출력한다.
4) 각 고객번호별 수강비의 합에서 1% 할인한 금액과 고객번호를 출력한다. 테이블명 참조를 단축하기 위해 테이블 별명을 사용한다.
5) ‘강현주‘ 직원에게 ‘수학1’을 수강하는 고객의 고객이름, 과목명, 직원이름을 출력한다. 테이블명 참조를 단축하기 위해 테이블 별명을 사용한다.
과제 3. C 전자대리점의 데이터베이스 구축을 위한 요구 조건은 아래와 같다.
전자 대리점 데이터베이스를 구축하고자 한다.
여러 지점을 가지고 있으며 지점에서 근무하는 직원은 여러 명이며 직원은 하나의 지점에서만 근무할 수 있다. 지점에서 판매하는 전자 제품은 여러 개이며 하나의 전자 제품은 여러 지점에 의해 판매될 수 있다. 고객은 여러 제품을 구매할 수 있으며 제품은 여러 고객에 의해 구매될 수 있다. 또한 직원은 여러 명의 고객을 서비스하며 고객은 한명의 직원에게 서비스 받는 것으로 한다.
댓글 (7)
과제물 문제
(2009. 2학기)
대상 학과
컴퓨터과학과
교과목명
데이터베이스설계 및 구현
대상 학년
3학년
※ 각 출제문항당 배점점수를 반드시 명시하여 주시기 바랍니다(전체만점:30점)
학번의 끝자리수가 1번 - 3번 : A형
4번 - 6번 : B형
7번 - 0번 : C형
A형
A 아기용품 대여점의 데이터베이스 구축을 위한 요구 조건이 아래와 같다.
※ 첨부 파일 참조
B형
B 종합학원의 데이터베이스 구축을 위한 요구 조건이 아래와 같다.
※ 첨부 파일 참조
C형
C 전자제품 대리점의 데이터베이스 구축을 위한 요구 조건은 아래와 같다.
※ 첨부 파일 참조
중간 과제물 작성을 위한 실습 DBMS는 MS-SQL(버전 : 7.0, 2000, 2005, 2007), 오라클(버전:8i, 9i, 10g, 11g)을 사용한다.
교재 데이터베이스 설계와 구현(chap 2~5장)을 공부하신 후에 과제물을 작성하십시오.
※ 붙임 : 평가기준표 1매.
출 제 위 원
소 속
직 명
성 명
컴퓨터과학과
교 수
이 언 배 (인)
한국방송통신대학교총장 귀하
※ 첨부 파일
1. 과제물은 다음의 형식에 맞추어 제출한다. (A형, B형, C형 모두 공통 )
① 각 형별로 제시된 과제 제시.
② 각 형별로 제시된 엔티티 요구사항과 관계 요구사항을 가지고 ER-Win 툴을 사용하여 E-R 다이어그램을 표현
③ 테이블 생성하는 SQL문과 결과
④ 테이블에 Instance를 삽입하는 SQL문과 결과
(문제가 요구하는 질의 결과가 나오도록 Instance 값을 7건 이상 삽입한다. )
⑤ 각 형별로 제시된 문제
⑥ 문제의 답을 구하는 SQL문과 결과. (문제에서 제시한 결과를 출력하기 위해 반드시 해당 Instance를 삽입하여 결과를 출력한다.)
<참고사항>
・ SQL문과 결과는 모두 화면 캡쳐하여 과제물에 포함시킨다.
・ 화면캡쳐 시 결과 값이 모두 보여야 한다.
・ 과제작성을 위한 실습 Tool은 기본적으로 MS-SQL(버전 : 7.0, 2000, 2005, 2007 - 쿼리분석기를 이용),
오라클(버전:8i, 9i, 10g, 11g - SQL*Plus) 사용.
・ 교재 데이터베이스 설계와 구현(chap 2~5장)을 공부하신 후에 과제물을 작성하십시오.
2. MS-SQL 프로그램 이용 시 (과제 작성 예)
1) 과제 제시 (예를 들어)
맥주 회사들은 맥주 회사별로 다양한 종류의 맥주를 만든다.
2) ER-Win 툴을 사용하여 E-R 다이어그램으로 표현
- 결과는 <그림 1-1> 참조 (화면 캡쳐)
3) beers 테이블을 생성하는 SQL 문장
- create table beers(name varchar2(10) primary key, manf varchar2(20) not null);
- 결과는 <그림 1-2> 참조 (화면 캡쳐)
4) 생성된 beers table에 Instance values를 삽입 SQL 문장.
(Instance values는 자신이 임의로 정하여 삽입한다.)
- insert into beers values ('Exfeel', 'HiteBeer');
insert into beers values ('Carlsberg', 'HiteBeer');
insert into beers values ('Cass', 'CassBeer');
insert into beers values ('OBLager', 'CassBeer');
- 결과는 <그림 1-2> 참조 (화면 캡쳐)
5) beers table에 Instance values이 제대로 삽입되었는지 확인하는 SQL 문장.
- select * from beers;
- 결과는 <그림 1-2> 참조 (화면 캡쳐)
6) 각 형별로 제시된 문제
문제1. 맥주에 대한 모든 정보를 구하시오.
- SQL 문장 : select * from beers;
- 결과는 <그림 1-3> 참조 (화면 캡쳐)
문제2. HiteBeer 회사에서 제조하는 맥주의 이름을 구하시오.
- SQL 문장 : select name from beers where manf = HiteBeer;
- 결과는 <그림 1-3> 참조 (화면 캡쳐)
문제3. CassBeer 회사에서 제조하는 맥주의 개수를 구하시오.
- SQL 문장 : select count(*) from beers where manf = 'CassBeer';
- 결과는 <그림 1-3> 참조 (화면 캡쳐)
6) 결과 화면(화면 캡쳐) :
과제 1. A 아기용품 대여점의 데이터베이스 구축을 위한 요구 조건은 아래와 같다.
아기 용품을 대여해주는 대리점 데이터베이스를 구축하고자 한다.
고객은 여러 아기 용품을 대여할 수 있고 아기 용품은 여러 고객에 의해 대여될 수 있다. 대리점은 여러 체인점을 가지고 있으며 체인점의 직원은 여러 명이며, 직원은 하나의 체인점에서만 근무할 수 있는 것으로 한다. 한명의 직원이 서비스하는 고객은 여러 명이며 고객은 한명의 직원에 의해서만 서비스 받는 것으로 한다. 또한, 하나의 체인점에서 관리되는 아기 용품은 여러 개이며 하나의 아기 용품은 여러 체인점에서 고객들에게 대여될 수 있다.
1. 엔티티(entity) 요구사항
1) 고객(customer) : 고객번호(c_no), 고객이름(c_name), 고객주소(c_addr), 고객전화번호(c_phone)로 인식한다.
2) 아기용품(layette) : 아기용품번호(l_no), 아기용품명(l_name), 대여요금(rent_fee), 수량(quantity)으로 인식한다.
3) 체인점(branch) : 체인점번호(b_code), 체인점이름(b_name), 체인점주소(b_addr), 체인점전화번호(b_tel)로 인식한다.
4) 직원(emp) : 직원번호(e_no), 직원이름(e_name), 직원주소(e_addr), 직원전화번호(e_phone)로 인식한다.
※ 각 Attribute의 Data type은 사용자가 알아서 정의하며, instance 삽입시 대여 요금은 원단위로 삽입한다. 단, 대여요금은 한달 기준이다.
2. 관계(relationship) 요구사항
1) 고객(customer)과 아기용품(layette) 간에 다대다 관계
2) 체인점(branch)과 아기용품(layette) 간에 다대다 관계
3) 체인점(branch)과 직원(emp) 간에 일대다 관계
4) 고객(customer)과 직원(emp)간에 다대일 관계
3. ER-Win 툴을 사용하여 E-R 다이어그램 표현
4. 테이블과 Instance values 삽입 SQL 문장
5. 문제 (단, 문제에서 요구하는 데이터값이 출력될 수 있도록 instance를 삽입하여, 해당 질의문 결과를 출력한다. 예: ‘공릉점’,‘유모차’)
1) 아기용품 테이블의 모든 아기용품번호, 아기용품명, 수량을 출력한다.
2) 체인점 테이블에서 체인점번호, 체인점이름, 체인점주소를 출력한다. 단, 질의 결과 ‘공릉점’ 정보만 출력되도록 한다.
3) 대여한 고객의 고객이름과 아기용품명을 출력한다. 테이블명 참조를 단축하기 위해 테이블 별명을 사용한다.
4) 각 고객번호별 대여요금의 합에 25.9%을 곱한 것과 고객번호를 출력한다. 테이블명 참조를 단축하기 위해 테이블 별명을 사용한다.
5) ‘공릉동‘ 지점에서 ‘유모차’를 대여한 고객의 고객이름, 고객주소, 대여요금, 아기용품명, 체인점이름을 출력한다. 테이블명 참조를 단축하기 위해 테이블 별명을 사용한다.
과제 2. B 종합학원의 데이터베이스 구축을 위한 요구 조건은 아래와 같다.
종합학원의 데이터베이스를 구축하고자 한다.
고객은 여러 과목을 수강할 수 있으며, 한 과목을 수강하는 고객은 여러 명이다. 직원은 여러 과목을 강의할 수 있으며 같은 과목 또한 여러 직원에 의해 강의될 수 있다. 한 지점의 직원은 여러 명이며 한명의 직원은 하나의 지점에만 근무할 수 있는 것으로 한다. 또한 지점에서 관리하는 고객은 여러 명이며 한명의 고객은 하나의 지점에서 관리하는 것으로 한다.
1. 엔티티(entity) 요구사항
1) 고객(customer) : 고객번호(c_no), 고객이름(c_name), 고객주소(c_addr), 전화번호(c_phone)로 인식한다.
2) 개설과목(lesson) : 과목번호(l_no), 과목명(l_name), 수강비(l_fee) 으로 인식한다.
3) 지점(branch) : 지점코드(b_code), 지점명(b_name), 지점주소(b_addr), 지점전화번호(b_phone)로 인식한다.
4) 직원(emp) : 직원코드(e_no), 직원이름(e_name), 직원주소(e_addr), 전화번호(e_phone), 입사일(hire_date)로 인식한다.
※ 각 Attribute의 Data type은 사용자가 알아서 정의하며, instance 삽입 시 수강금액은 원단위로 삽입한다. 단, 수강금액은 한달 기준이다.
2. 관계(relationship) 요구사항
1) 고객(customer)과 개설과목(lesson)간에 다대다 관계
2) 개설과목(lesson)와 직원(emp) 간에 다대다 관계
3) 지점(branch)과 직원(emp) 간에 일대다 관계
4) 고객(customer)과 지점(branch) 간에 다대일 관계
3. ER-Win 툴을 사용하여 E-R 다이어그램 표현
4. 테이블과 Instance values 삽입 SQL 문장
5. 문제 (단, 문제에서 요구하는 데이터값이 출력될 수 있도록 instance를 삽입하여, 해당 질의문 결과를 출력한다. 예: ‘영어1’, ‘강현주’, ‘수학1’)
1) 고객 테이블상의 모든 고객번호, 고객이름, 고객주소를 출력한다.
2) 개설과목 테이블에서 과목번호, 과목명, 수강금액을 출력한다. 단, 질의 결과 과목명이 ‘영어1’인 행만 출력되도록 한다.
3) 모든 직원의 직원 이름과 각 직원이 강의하는 과목명을 출력한다.
4) 각 고객번호별 수강비의 합에서 1% 할인한 금액과 고객번호를 출력한다. 테이블명 참조를 단축하기 위해 테이블 별명을 사용한다.
5) ‘강현주‘ 직원에게 ‘수학1’을 수강하는 고객의 고객이름, 과목명, 직원이름을 출력한다. 테이블명 참조를 단축하기 위해 테이블 별명을 사용한다.
과제 3. C 전자대리점의 데이터베이스 구축을 위한 요구 조건은 아래와 같다.
전자 대리점 데이터베이스를 구축하고자 한다.
여러 지점을 가지고 있으며 지점에서 근무하는 직원은 여러 명이며 직원은 하나의 지점에서만 근무할 수 있다. 지점에서 판매하는 전자 제품은 여러 개이며 하나의 전자 제품은 여러 지점에 의해 판매될 수 있다. 고객은 여러 제품을 구매할 수 있으며 제품은 여러 고객에 의해 구매될 수 있다. 또한 직원은 여러 명의 고객을 서비스하며 고객은 한명의 직원에게 서비스 받는 것으로 한다.
1. 엔티티(entity) 요구사항
1) 지점(branch) : 지점코드(b_code), 지점이름(b_name), 지점주소(b_addr), 지점전화번호(b_phone)로 인식한다.
2) 직원(emp) : 직원코드(e_no), 직원이름(e_name), 주소(e_addr), 전화번호(e_phone), 입사일(hire_date)로 인식한다.
3) 고객(customer) : 고객번호(c_no), 고객이름(c_name), 고객주소(c_addr), 전화번호(c_phone)로 인식한다.
4) 전자제품(appliance) : 제품코드(appl_code), 제품이름(appl_name), 가격(appl_price), 수량(quantity)으로 인식한다.
※ 각 Attribute의 Data type은 사용자가 알아서 정의하며, instance 삽입 시 가격은 원단위로 삽입한다.
2. 관계(relationship) 요구사항
1) 지점(branch)와 직원(emp) 간의 일대다 관계
2) 직원(emp)와 고객(customer) 간의 일대다 관계
3) 전자제품(appliances)와 고객(customer) 간의 다대다 관계
4) 지점(branch)과 전자제품(appliances) 간의 다대다 관계
3. ER-Win 툴을 사용하여 E-R 다이어그램 표현
4. 테이블과 Instance values 삽입 SQL 문장
5. 문제 (단, 문제에서 요구하는 데이터값이 출력될 수 있도록 instance를 삽입하여, 해당 질의문 결과를 출력한다. 예: ‘냉장고’, ‘진주점’, ‘강철수’)
1) 체인점 테이블상의 모든 체인점코드, 체인점이름, 체인점주소를 출력한다.
2) 전자제품 테이블에서 제품코드, 제품이름, 가격, 수량을 출력한다. 단, 질의 결과 제품이름이 ‘냉장고’인 행만 출력되도록 한다.
3) ‘진주점‘에서 일하는 모든 직원의 직원 이름과 지점이름을 출력한다.
4) 직원 ‘강철수’에게 서비스 받은 고객이 구입한 제품이름과 고객이름, 직원 이름을 출력한다.
5) 제품가격 1,000,000원 이상인 제품을 구입한 고객 이름과 구입한 지점의 지점이름 그리고 제품가격과 제품이름을 출력한다.
물론 자격증용으로 공부해서 수박 겉핥기식이었지만...ㄲㄲㄲ