Professional Documents
Culture Documents
Daniel F.S - Bai Tap KT Phan Mem - Quan Ly Chuyen
Daniel F.S - Bai Tap KT Phan Mem - Quan Ly Chuyen
I. Thực thể:
1. Chuyến bay
2. Vé máy bay
3. Nhân viên
4. Hành khách
II. Phụ thuộc hàm:
1. Số hiệu chuyến bay (Ngày tháng năm bay, Thời gian bay).
2. Số hiệu nhân viên (Họ tên nhân viên, Ngày sinh nv, giới tính, địa chỉ, điện thoại nv).
3. Số hộ chiếu-CMND hành khách (Họ tên khách, ngày sinh khách, quốc tịch, điện thoại khách, tên cơ
quan).
4. Số hiệu vé (Giá vé, Số ghế, hạng vé, Số hộ chiếu-CMND hành khách, Họ tên khách, ngày sinh
khách, quốc tịch, điện thoại khách, tên cơ quan).
III. Chuẩn hóa:
Nhận xét: Tách “Bảng 1. Chuyến bay” thành “Bảng 2. Chuyến bay”, “Bảng 3. Chuyến bay – Nhân viên”
và “Bảng 4. Chuyến bay – Vé”
Bảng 2. Chuyến bay (3NF) Bảng 3. Chuyến bay – Nhân viên (1NF)
1 Số hiệu chuyến bay (PK) 1 Số hiệu chuyến bay (PK) 2
2 Ngày tháng năm bay 2 Số hiệu nhân viên (PK)
3 Thời gian bay 3 Họ tên nhân viên
4 Ngày sinh nv
5 Giới tính
6 Địa chỉ
7 Điện thoại nv
Bảng 4. Chuyến bay – Vé (1NF)
1 Số hiệu chuyến bay (PK) 2
2 Số hiệu vé (PK)
3 Giá vé
4 Số ghế
5 Hạng vé
6 Số hộ chiếu-CMND hành khách
7 Họ tên khách
8 Ngày sinh khách
9 Quốc tịch
10 Điện thoại khách
11 Tên cơ quan
Nhận xét: Tách “Bảng 3. Chuyến bay – Nhân viên” thành “Bảng 5. Chuyến bay – Nhân viên” và “Bảng 6.
Nhân viên”
Nhận xét: Tách “Bảng 4. Chuyến bay – Vé” thành “Bảng 7. Chuyến bay – Vé” và “Bảng 8. Vé”
Bảng 8. Vé (2NF)
1 Số hiệu vé (PK)
2 Giá vé
3 Số ghế
4 Hạng vé
5 Số hộ chiếu-CMND hành khách
6 Họ tên khách
7 Ngày sinh khách
8 Quốc tịch
9 Điện thoại khách
10 Tên cơ quan
Nhận xét: Tách “Bảng 8. Vé” thành “Bảng 9. Vé” và “Bảng 10. Hành khách”
Bảng 9. Vé (3NF)
1 Số hiệu vé (PK)
2 Giá vé
3 Số ghế
4 Hạng vé
5 Số hộ chiếu-CMND hành khách 10
Đối với mỗi số hiệu vé máy bay, đưa ra thông tin chi tiết về hành khách mang vé này và thông tin chi tiết
về các nhân viên trong tổ phục vụ chuyến bay tương ứng.
Cách 1:
select ve.sohieuve,hanhkhach.*,chuyenbay_ve.sohieuchuyenbay,nhanvien.*
from ve,hanhkhach,chuyenbay_ve,chuyenbay_nhanvien,nhanvien
where hanhkhach.sohochieu_CMND=ve.sohochieu_CMND
and
chuyenbay_ve.sohieuve=ve.sohieuve
and
chuyenbay_nhanvien.sohieuchuyenbay=chuyenbay_ve.sohieuchuyenbay
and
nhanvien.sohieunhanvien=chuyenbay_nhanvien.sohieunhanvien
order by sohieuve;
Cách 2:
select ve.sohieuve, hanhkhach.*, chuyenbay_ve.sohieuchuyenbay,
chuyenbay_nhanvien.sohieunhanvien, nhanvien.*
from ve
inner join hanhkhach on hanhkhach.sohochieu_CMND=ve.sohochieu_CMND
inner join chuyenbay_ve on chuyenbay_ve.sohieuve=ve.sohieuve
inner join chuyenbay_nhanvien on
chuyenbay_nhanvien.sohieuchuyenbay=chuyenbay_ve.sohieuchuyenbay
inner join nhanvien on
nhanvien.sohieunhanvien=chuyenbay_nhanvien.sohieunhanvien
order by sohieuve;
Chuyến bay-Nhân viên (Số hiệu chuyến bay,số hiệu Key(Số hiệu chuyến bay,số hiệu
RELATION
nhân viên) nhân viên)