Danh mục tài liệu

Bài tập học Cơ sở dữ liệu

Số trang: 10      Loại file: docx      Dung lượng: 52.30 KB      Lượt xem: 10      Lượt tải: 0    
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Mỗi hợp đồng sửa xe ký kết với khách hàng đều có mã số (SOHD) để phân biệt. NGAYHD làngày ký hợp đồng. Mỗi khách hàng có một mã số (MAKH), một tên (TENKH) và một địa chỉ(DCHI) để theo dõi công nợ. SOXE là số đăng bộ của xe đem đến sửa chữa, số này do phòngCSGT đường bộ cấp (nếu xe đổi chủ thì xem như một xe khác). Khách hàng ký hợp đồngchính là chủ xe sửa chữa. Một khách hàng có thể ký nhiều hợp đồng sửa chữa nhiều xe khácnhau hoặc hợp đồng sửa chữa...
Nội dung trích xuất từ tài liệu:
Bài tập học Cơ sở dữ liệu MỘTSỐBÀITẬPMẪUBàitậpmẫu1Cho một lược đồ cơ sở dữ liệu C dùng để quản lý hoạt đ ộng s ửa ch ữa, bảo trì xe c ủa m ột gara xe h ơi.Lược đồ cơ sở dữ liệu C gồm các lược đồ quan hệ như sau:Q1: Tho(MATHO,TENTHO,NHOM,NHOM_TRUONG)Tân từ: Mỗi người thợ đều có mã số là MATHO để nhận diện. Mỗi thợ ch ỉ có một tên (TENTHO) và ch ỉ thuộc một nhóm (NHOM). Nhóm trưởng (NHOM_TRUONG)của m ỗi nhóm là m ột trong s ố những người thợ của nhóm đó. MGT(MATHO)=MGT(NHOM_TRUONG)Q2: Cong_viec(MACV,NOIDUNGCV)Tân từ: Dịch vụ sửa chữa xe được chia nhỏ thành nhiều công việc để dễ dàng tính toán chi phí v ới khách hàng. Mỗi công việc đều có mã riêng (MACV) và nội dung c ủa công vi ệc đ ược mô t ả qua NOIDUNGCV.Q3 : Hop_dong(SOHD,NGAYHD,MAKH,TENKH,DCHI,SOXE,TRIGIAHD, NG_GAIO_DK,NG_NGTHU)Tân từ: Mỗi hợp đồng sửa xe ký kết với khách hàng đều có mã s ố (SOHD) đ ể phân bi ệt. NGAYHD là ngày ký hợp đồng. Mỗi khách hàng có một mã s ố (MAKH), một tên (TENKH) và m ột đ ịa ch ỉ (DCHI) để theo dõi công nợ. SOXE là s ố đăng b ộ của xe đem đến s ửa ch ữa, s ố này do phòng CSGT đường bộ cấp (nếu xe đổi chủ thì xem như m ột xe khác). Khách hàng ký h ợp đ ồng chính là chủ xe sửa chữa. Một khách hàng có thể ký nhi ều h ợp đ ồng s ửa ch ữa nhi ều xe khác nhau hoặc hợp đồng sửa chữa nhiều lần của cùng m ột xe nh ưng trong cùng m ột ngày. Nh ững công việc sửa chữa cho một đầu xe chỉ ký hợp đồng một lần. TRIGIAHD là t ổng tr ị giá c ủa hợp đồng. NG_GIAO_DK là ngày dự kiến phải giao trả xe cho khách. NG_NGTHU là ngày nghiệm thu thật sự sau khi đã sửa chữa xong để thanh lý hợp đ ồng.Q4 : Chitiet_HD(SOHD,MACV,TRIGIA_CV,MATHO,KHOANTHO)Tân từ: Mỗi hợp đồng sửa xe có thể gồm nhiều công việc. MACV là mã s ố c ủa t ừng công vi ệc. TRIGIA_CV là chi phí về vật tư, phụ tùng, thiết bị, công thợ ... đã tính toán v ới khách. M ỗi công việc của hợp đồng sẽ giao cho một người thợ phụ trách (MATHO) và một ng ười th ợ có th ể tham gia vào nhiều công việc của một hay nhiều h ợp đồng khác nhau. KHOANTHO là s ố ti ền giao khóan lại cho người thợ sửa chữa.Q5 : Phieu_thu(SOPH,NGAYPH,SOHD,MAKH,HOTEN,SOTIENTHU)Tân từ: Khách hàng (MAKH) có thể thanh toán tiền của m ột h ợp đ ồng (SOHD) làm nhi ều l ần tr ước ho ặc sau khi nghiệm thu (trong cùng ngày hoặc khác ngày). M ỗi l ần thanh toán đ ều có s ố phi ếu đ ể phân biệt (SOPH), NGAYPH là ngày phát hành phiếu và SOTIENTHU là s ố ti ền thanh toán. HOTEN là họ tên của người mang tiền đến thanh toán (có thể khác v ới tên c ủa khách hàng đứng ra ký hợp đồng)Câu hỏi:1/ Xác định tập hợp F gồm tất cả các phụ thuộc ham suy ra t ừ tân t ừ c ủa các l ược đ ồ quan h ệ (không cần liệt kê các phụ thuộc hàm hiển nhiên). Xác định khóa cho t ừng l ược đ ồ quan hệ.2/ Mô tả tất cả các ràng buộc toàn vẹn của lược đồ cơ sở dữ li ệu C. Lập b ảng t ầm ảnh h ưởng t ổng h ợp.3/ Dùng ngôn ngữ SQL để thực hiện những yêu cầu sau: Cho biết danh sách những người thợ hiện không tham gia vào m ột h ợp đ ồng s ửa ch ữa nào. Cho biết danh sách những hợp đồng hiện đã thanh lý (đã giao tra xe cho khách) nh ưng ch ưa được thanh toán đầy đủ. Giả sử hôm nay là ngày 21/12/95 cho biết danh sách nh ững hợp đ ồng c ần ph ải hoàn t ất tr ước ngày 31/12/95. Cho biết người thợ nào thực hiện nhiều công việc nhất. Cho biết người thợ nào thực hiện tổng giá trị công vi ệc (tổng s ố tiền) cao nh ất.4/ Lược đồ cơ sở dữ liệu C ở dạng chuẩn mấy (cao nhất). Hãy dùng thuật toán phân rã đ ể nâng c ấp lược đồ cơ sở dữ liệu trên.Lưu ý: Các thuộc tính đều được xem như thuộc tính đơn.Đáp án:Câu 1:F1={MATHO→TENTHO,NHOM,NHOM_TRUONG}Q1:Tho(MATHO,TENTHO,NHOM,NHOM_TRUONG)F2={MACV→NOIDUNGCV}Q2:Congviec(MACV,NOIDUNGCV)F3={SOHD→NGAYHD,MAKH,SOXE,TRIGIAHD,NG_GIAO_DK,NG_NGTHU; MAKH→TENKH,DCHI}Q3: Hopdong(SOHD,NGAYHD,MAKH,TENKH,DCHI,SOXE,TRIGIAHD,NG_GIAO_DK,NG_NGTHU)F4={SOHD,MACV→TRIGIA_CV,MATHO,KHOANTHO}Q4:ChiTiet_hd(SOHD,MACV,TRIGIA_CV,MATHO,KHOANTHO)F5={SOPH→NGAYPH,SOHD,HOTEN,SOTIENTHU;SOHD→MAKH}Q5:Phieu_thu(SOPH,NGAYPH,SOHD,MAKH,HOTEN,SOTIENTHU)Câu 2: mô tả tất cả các ràng buộc toàn vẹn:R11 ∀ t1,t2 ∈ rTho RBTV khóa chính t1.MATHO ≠ t2.MATHO cuối ∀R12 rTho[NHOM_TRUONG] ⊆ rTho[MATHO] RBTV khóa ngoạiR13 ∀ t ∈ rTho t.TENTHO ≠ NULL RBTV miền giá trị t.NHOM ≠ NULL RBTV miền giá trị cuối ∀R21 ∀ t1,t2 ∈ rCongviec RBTV khóa chính t1.MACV ≠ t2.MACV ...

Tài liệu có liên quan:

Tài liệu mới: