Untitled 0 ĐẠI HỌC UEH TRƯỜNG CÔNG NGHỆ VÀ THIẾT KẾ KHOA CÔNG NGHỆ THÔNG TIN KINH DOANH ĐỒ ÁN NHÓM Thiết kế Cơ Sở Dữ Liệu Hệ thống Quản lý Nhân viên, Khách hàng và Đơn đặt hàng Môn học Cơ Sở Dữ Liệu G[.]
lOMoARcPSD|18034504 ĐẠI HỌC UEH TRƯỜNG CÔNG NGHỆ VÀ THIẾT KẾ KHOA CƠNG NGHỆ THƠNG TIN KINH DOANH ĐỒ ÁN NHĨM Thiết kế Cơ Sở Dữ Liệu Hệ thống Quản lý Nhân viên, Khách hàng Đơn đặt hàng Môn học: Cơ Sở Dữ Liệu Giảng viên hướng dẫn: Bùi Xuân Huy Mã lớp học phần: 22D1INF50900606 Nhóm: G07 Khóa – Lớp: K46 – ER001 TP Hồ Chí Minh, ngày tháng năm 2022 lOMoARcPSD|18034504 Đồ Án Cuối Kỳ Mơn Cơ Sở Dữ Liệu Nhóm Thơng tin thành viên Tên thành viên MSSV Vai trò Huỳnh Anh Duy 31191025528 Trường nhóm Lê Mạnh Dũng 31201023805 Thành viên Võ Thế Anh 31201025791 Thành viên Trần Trung Tính 31201023997 Thành viên Đỗ Đặng Quốc Việt 31201024087 Thành viên lOMoARcPSD|18034504 Mục Lục I/ Mơ tả quy trình nghiệp vụ liên quan: 1/ Quy Trình Quản Lý Đơn Đặt Hàng 2/ Quy Trình Đặt Hàng Từ Nhà Cung Cấp 3/ Các nghiệp vụ khác II/ Mô tả liệu: III/ Mơ hình hóa liệu 1/ Các thực thể tham gia: 2/ Mơ hình quan hệ - thực thể: IV/ Chuyển đổi thành lược đồ quan hệ: 1/ Lược đồ quan hệ: .7 2/ Diễn giải thực thể thuộc tính: V/ Ràng buộc toàn vẹn: 10 1/ Bảng Nhân Viên - Employee: 10 2/ Bảng Chi Nhánh – Branch: 12 3/ Bảng Khách Hàng – Client: 13 4/ Bảng Đơn Đặt Hàng – Orders: 13 5/ Bảng Chi Tiết Đơn Đặt Hàng – Order_details: 15 6/ Bảng Hàng Hóa Cung Cấp – Item: 16 7/ Bảng Nhà Cung Cấp – Supplier: 17 VI/ Phụ thuộc hàm chuẩn hóa: 18 VII/ Cài đặt sở liệu: 20 1/ Cài đặt bảng: 20 2/ Mơ hình liệu SQL Server: 22 VIII/ Truy vấn: 23 lOMoARcPSD|18034504 Mục Lục Bảng Table Employee - Nhân Viên Table Branch - Chi Nhánh Table Client - Khách Hàng Table Orders - Đơn Đặt Hàng Table Order_details - Chi Tiết Đơn Đặt Hàng Table Item - Hàng Hóa Cung Cấp Table Supplier - Nhà Cung Cấp lOMoARcPSD|18034504 I/ Mô tả quy trình nghiệp vụ liên quan: 1/ Quy Trình Quản Lý Đơn Đặt Hàng - Các Khách Hàng đối tác làm việc với Chi Nhánh tỉnh thành khác doanh nghiệp Khi đó, thông tin khách hàng tên công ty, loại hàng hóa đặt, số lượng, thơng tin liên lạc, địa nhân viên ghi nhận Trong trình làm việc, thơng tin Nhân Viên trực thuộc chi nhánh làm việc với khách hàng ghi nhận - Sau bàn bạc ghi nhận tất yêu cầu đặt hàng đơn đặt hàng tạo, có thông tin KH nhân viên làm việc với KH, ngày đặt hàng chi tiết đơn đặt hàng (gồm loại mặt hàng, số lượng, giá thành) để sau tính tổng giá trị mặt hàng cách lấy (giá thành x số lượng đặt) tính tổng giá trị đơn hàng cách lấy (tổng giá trị mặt hàng đơn hàng cộng lại) 2/ Quy Trình Đặt Hàng Từ Nhà Cung Cấp - Doanh nghiệp thu thập thông tin nhà cung cấp (như mã nhà cung cấp, tên nhà cung cấp, loại hàng hóa địa chỉ), sau phân tích đánh giá nhà cung cấp sở thông tin thu thập - Tất nhà cung cấp phê duyệt phải cập nhật vào danh sách nhà cung cấp gồm có thơng tin tên nhà cung cấp loại hàng hóa cung cấp để làm lựa chọn trình thực mua hàng doanh nghiệp - Chi nhánh có nhu cầu mua hàng lập phiếu u cầu cung ứng hàng chuyển cho phận cung ứng xem xét Căn vào phiếu yêu cầu cung ứng hàng, trưởng phận gửi thông tin mua vật tư cho nhà cung cấp phê duyệt để lựa chọn nhà cung cấp phù hợp Sau hoàn tất việc phê duyệt, trưởng phận cung ứng tiến hành tiếp xúc, thương thảo soạn thảo hợp đồng (hoặc đơn đặt hàng) với nhà cung cấp Sau nhận hàng hóa phận cung ứng tiến hành kiểm tra, nghiệm thu hàng hóa hàng hóa đáp ứng yêu cầu nêu hợp đồng tiến hành nhập kho 3/ Các nghiệp vụ khác - Nghiệp vụ cập nhật giá trị chiết khấu cho đơn đặt hàng: tính tốn giá trị mặt hàng chi tiết đơn hàng, cập nhật tổng giá trị đơn hàng cách lấy tổng giá trị mặt hàng chi tiết đơn hàng Sau dựa vào bảng chiết khấu sau để cập nhật mức chiết khấu khác dựa giá trị đơn hàng Tổng giá trị đơn đặt hàng >15.000.000 >20.000.000 >30.000.000 Mức chiết khấu 3% 5% 7% - Báo cáo số lượng mặt hàng bán chi nhánh báo cáo giá trị đơn đặt hàng theo chi nhánh II/ Mô tả liệu: - Thực thể Nhân Viên: lOMoARcPSD|18034504 Để quản lý nhân viên hiệu biết hoạt động người quy trình cơng ty, nhân viên cấp Mã nhân viên giúp phân biệt nhân viên với Ngồi ra, thơng tin cá nhân (như tên, ngày sinh, giới tính) thơng tin lương người ghi nhận Ngoài nhân viên trực thuộc chi nhánh tỉnh thành giám sát nhân viên giám sát, đồng thời trưởng chi nhánh tỉnh thành - Thực thể Chi Nhánh: Mỗi chi nhánh trực thuộc tỉnh thành khác có mã chi nhánh để phân biệt, tên chi nhánh, thông tin trưởng chi nhánh - Thực thể Khách Hàng: Các khách hàng quán cà phê tỉnh thành khác làm việc với nhân viên trực thuộc chi nhánh tỉnh thành Để quản lý thơng tin khách hàng làm việc với chi nhánh khác nhau, khách hàng có mã định danh mã khách hàng lưu trữ thông tin kèm theo như: tên khách hàng, thông tin liên lạc địa - Thực thể Đơn Đặt Hàng: Nhân viên trực thuộc chi nhánh làm việc với khách hàng để ghi nhận thông tin khách hàng đơn hàng, đơn đặt hàng có mã định danh mã đơn hàng, kèm theo ngày đặt hàng tổng giá trị đơn hàng Ngoài ra, chi tiết đơn đặt hàng bao gồm loại hàng hóa mà khách hàng đặt, giá thành mặt hàng, số lượng đặt để sau tính tổng giá trị mặt hàng cách lấy (giá thành x số lượng đặt) - Thực thể Hàng Hóa Cung Cấp: Để dễ dàng tham chiếu quản lý mặt hàng mà doanh nghiệp bán ra, loại hàng hóa ghi nhận chi tiết, cụ thể mặt hàng cung cấp mã định danh, kèm theo thông tin tên mặt hàng, giá thành, đơn vị tính giá thành thơng tin nhà cung cấp mặt hàng - Thực thể Nhà Cung Cấp: Để quản lý thông tin nhà cung cấp làm việc với doanh nghiệp, nhà cung cấp phân biệt mã nhà cung cấp, kèm theo thông tin tên nhà cung cấp, loại hàng hóa cung cấp, thơng tin liên lạc địa nhà cung cấp lOMoARcPSD|18034504 III/ Mơ hình hóa liệu 1/ Các thực thể tham gia: - Thực thể Nhân viên: Employee (emp_id, first_name, last_name, birth_date, sex, salary) - Thực thể Chi Nhánh: Branch (branch_id, branch_name) - Thực thể Khách Hàng: Client (client_id, client_name, client_contact, client_address) - Thực thể Đơn Đặt Hàng: Supplier (supplier_id, supplier_name, supplier_type, supplier_contact, supplier_address) - Thực thể Hàng Hóa Cung Cấp: Item (item_id, item_name, item_unit, item_price) - Thực thể Nhà Cung Cấp: Orders (order_id, order_date, order_subtotal, discount) 2/ Mơ hình quan hệ - thực thể: lOMoARcPSD|18034504 IV/ Chuyển đổi thành lược đồ quan hệ: 1/ Lược đồ quan hệ: Employee (emp_id, first_name, last_name, birth_date, sex, salary, super_id, branch_id) Branch (branch_id, branch_name, manager_id) Client (client_id, client_name, client_contact, client_address, branch_id) Orders (order_id, order_date, order_due, order_subtotal, discount, client_id, emp_id) Order_details (order_id, item_id, order_unit, unit_cost) Item (item_id, item_name, item_unit, item_price, supplier_id) Supplier (supplier_id, supplier_name, supplier_type, supplier_contact, supplier_address) 2/ Diễn giải thực thể thuộc tính: - Thực thể bảng Nhân Viên – Employee: Tên trường Kiểu liệu Diễn giải Ràng buộc emp_id INT Mã nhân viên Khóa first_name VARCHAR (20) Tên nhân viên last_name VARCHAR (20) Tên đệm birth_date DATE Ngày sinh nhân viên >18 sex VARCHAR (1) Giới tính Nam – M, Nữ - F ‘M’ or ‘F’ salary INT Lương nhân viên super_id INT Mã nhân viên giám sát Khóa ngoại branch_id INT Mã chi nhánh trực thuộc Khóa ngoại Table Employee - Nhân Viên - Thực thể bảng Chi Nhánh – Branch: Tên trường Kiểu liệu Diễn giải Ràng buộc branch_id VARCHAR (5) Mã chi nhánh Khóa branch_name VARCHAR (20) Tên chi nhánh manager_id INT Mã trưởng chi nhánh Khóa ngoại lOMoARcPSD|18034504 Table Branch - Chi Nhánh - Thực thể bảng Khách Hàng – Client: Tên trường Kiểu liệu Diễn giải Ràng buộc client_id INT Mã khách hàng Khóa client_name VARCHAR (40) Tên khách hàng client_contact VARCHAR (20) Số điện thoại khách hàng client_address VARCHAR (100) Địa khách hàng branch_id INT Mã chi nhánh phụ trách Khóa ngoại Table Client - Khách Hàng - Thực thể bảng Đơn Đặt Hàng – Orders: Tên trường Kiểu liệu Diễn giải Ràng buộc order_id INT Mã đơn đặt hàng Khóa client_name VARCHAR (40) Tên khách hàng order_date DATE Ngày đặt hàng order_due DATE Ngày đến hạn order_subtotal INT Tổng giá trị đơn hàng discount DECIMAL (3,2) Phần trăm giảm giá client_id INT Mã khách hàng đặt Khóa ngoại emp_id INT Mã nhân viên lập đơn Khóa ngoại Table Orders - Đơn Đặt Hàng - Thực thể bảng Chi Tiết Đơn Đặt Hàng – Order_details: Tên trường Kiểu liệu Diễn giải Ràng buộc order_id INT Mã đơn đặt hàng item_id INT Mã mặt hàng Khóa (tạo thành từ khóa ngoại) order_unit INT Số lượng đặt unit_cost INT Giá thành mặt hàng Table Order_details - Chi Tiết Đơn Đặt Hàng - Thực thể bảng Hàng Hóa Cung Cấp – Item: lOMoARcPSD|18034504 Tên trường Kiểu liệu Diễn giải Ràng buộc item_id item_name INT VARCHAR (40) Mã mặt hàng Tên mặt hàng Khóa item_unit VARCHAR (10) Mơ tả đơn vị tính item_price INT Giá mặt hàng supplier_id VARCHAR (10) Mã nhà cung cấp mặt hàng Khóa ngoại Table Item - Hàng Hóa Cung Cấp - Thực thể bảng Nhà Cung Cấp – Supplier: Tên trường Kiểu liệu Diễn giải Ràng buộc supplier_id supplier_name VARCHAR (10) VARCHAR (40) Mã nhà cung cấp Tên nhà cung cấp Khóa supplier_type VARCHAR (40) Loại hàng hóa cung cấp supplier_contact VARCHAR (20) Số điện thoại nhà cung cấp supplier_address VARCHAR (100) Địa nhà cung cấp Table Supplier - Nhà Cung Cấp lOMoARcPSD|18034504 Ràng buộc lương nhân viên giám sát – R7: ∀ e ∊ Employee, ∀ s ∊ Employee: (e.emp_id = s.supper_id) (e.salary > s.salary) Trong bảng Nhân Viên, lương nhân viên giám sát phải lớn lương nhân viên lại) - Bảng Tầm Ảnh Hưởng: R1 Thêm Employee + R2 Thêm Employee + Xóa + (emp_id) Xóa Thêm Employee + (emp_id, super_id) R4 Thêm Employee + R5 Thêm Employee + R6 Thêm Employee + Sửa + (branch_id) Branch R3 Sửa + + (branch_id) Xóa Sửa + (emp_id, super_id) Xóa Sửa + (sex) Xóa Sửa + (birth_date) Xóa Sửa + (salary) 11 Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 R7 Thêm Employee + Xóa Sửa + (e.salary, s.salary) 2/ Bảng Chi Nhánh – Branch: Mã chi nhánh (branch_id) PK bảng Chi Nhánh – Branch FK bảng Nhân Viên cho biết nhân viên thuộc chi nhánh Ngoài ra, mã nhân viên quản lý chi nhánh (manager_id) FK bảng Chi Nhánh tham chiếu từ mã nhân viên (emp_id) bảng Nhân Viên - Đặc tả hình thức: + Ràng buộc khóa chính: Ràng buộc mã chi nhánh – R1: t1, t2 ∊ Branch, t1 ≠ t2 → t1.branch_id ≠ t2.branch_id (2 dòng bảng Chi Nhánh khơng đươc phép có mã chi nhánh – branch_id) + Ràng buộc khóa ngoại: Ràng buộc mã nhân viên làm trưởng chi nhánh – R2: ∀ t ∊ Branch, ∃! t’ ∊ Employee, t.manager_id = t’.emp_id (Trong quan hệ bảng Chi Nhánh bảng Nhân Viên, giá trị mã nhân viên làm trưởng manager_id dòng bảng Chi Nhánh phải tương ứng tồn với mã nhân viên – emp_id bảng Nhân Viên) - Bảng Tầm Ảnh Hưởng: R1 Thêm Branch + R2 Thêm Branch + Xóa Sửa + (branch_id) Xóa Sửa + (manager_id) Employee + 12 Downloaded by vu ga (vuchinhhp2@gmail.com) + (emp_id) lOMoARcPSD|18034504 3/ Bảng Khách Hàng – Client: Mã khách hàng (client_id) PK bảng Khách hàng FK bảng Đơn đặt hàng Orders Ngoài mã chi nhánh (branch_id) bảng Khách Hàng FK tham chiếu từ bảng Chi Nhánh cho biết chi nhánh làm việc với khách hàng - Đặc tả hình thức: + Ràng buộc khóa chính: Ràng buộc mã khách hàng – R1: t1, t2 ∊ Client, t1 ≠ t2 → t1.client_id ≠ t2.client_id (Trong bảng Khách Hàng, dòng khơng phép có trùng mã khách hàng – client_id) + Ràng buộc khóa ngoại: Ràng buộc chi nhánh làm việc với khách hàng – R2: ∀ t ∊ Client, ∃! t’ ∊ Branch, t.branch_id = t’.branch_id (Trong quan hệ bảng Khách Hàng bảng Nhân Viên, giá trị mã chi nhánh - branch_id dòng bảng Khách Hàng phải tương ứng tồn với mã chi nhánh – branch_id bảng Chi Nhánh) - Bảng Tầm Ảnh Hưởng: R1 Thêm Client + R2 Thêm Client + Branch Xóa Sửa + (client_id) Xóa Sửa + (branch_id) + + (branch_id) 4/ Bảng Đơn Đặt Hàng – Orders: Mã đơn đặt hàng (order_id) PK bảng Đơn đặt hàng - Orders, FK tham gia vào khóa phức hợp bảng Chi tiết đơn đặt hàng - Order_details Ngoài ra, cột mã khách hàng – client_id, mã nhân viên phụ trách lập đơn hàng – emp_id bảng Đơn Đặt Hàng FK tham chiếu từ bảng Khách Hàng bảng Nhân Viên 13 Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 - Đặc tả hình thức: + Ràng buộc khóa chính: Ràng buộc mã đơn đặt hàng – R1: t1, t2 ∊ Orders, t1 ≠ t2 → t1.order_id ≠ t2.order_id (Trong Bảng Đơn đặt hàng - Order, dịng có mã đặt hàng order_id không phép trùng nhau) + Ràng buộc khóa ngoại: Ràng buộc đơn đặt hàng khách hàng – R2: ∀ t ∊ Orders, ∃! t’ ∊ Client, t.client_id = t’.client_id (Trong quan hệ bảng Đơn Đặt Hàng bảng Khách Hàng, giá trị mã khách hàng – client_id dòng bảng Đơn Đặt Hàng phải tương ứng tồn với mã khách hàng – client_id bảng Khách Hàng) Ràng buộc đơn đặt hàng nhân viên lập – R3: ∀ t ∊ Orders, ∃! t’ ∊ Employee, t.emp_id = t’.emp_id (Trong quan hệ bảng Đơn Đặt Hàng bảng Nhân Viên, giá trị mã nhân viên – emp_id dòng bảng Đơn Đặt Hàng phải tương ứng tồn với mã nhân viên – emp_id bảng Nhân Viên) - Bảng Tầm Ảnh Hưởng: R1 Thêm Orders + R2 Thêm Orders + Xóa + (order_id) Xóa Thêm Order + Sửa + (client_id) Client R3 Sửa + + (client_id) Xóa Sửa + (emp_id) 14 Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 Employee + (emp_id) + 5/ Bảng Chi Tiết Đơn Đặt Hàng – Order_details: Bảng Chi Tiết Đơn Đặt Hàng có khóa khóa phức hợp gồm khóa Mã đơn đặt hàng (order_id) Mã hàng hóa cung cấp (item_id), đồng thời FK tham chiếu từ bảng Đơn đặt hàng - Orders Hàng hóa cung cấp - Item - Đặc tả hình thức: + Ràng buộc khóa chính: Ràng buộc khóa phức hợp – R1: t1, t2 ∊ Order_details, t1 ≠ t2 → t1.(order_id, item_id) ≠ t2 (order_id, item_id) (Trong Bảng Chi Tiết Đơn Đặt Hàng- Order_details, dịng có đồng thời mã đơn đặt hàng order_id mã hàng hóa cung cấp item_id khơng phép trùng nhau) + Ràng buộc khóa ngoại: Ràng buộc Chi tiết đơn đặt hàng thuộc đơn hàng – R2: ∀ t ∊ Order_details, ∃! t’ ∊ Orders, t.order_id = t’.order_id (Trong quan hệ bảng Chi Tiết Đơn Đặt Hàng bảng Đơn Đặt Hàng, giá trị mã đơn đặt hàng – order_id dòng bảng Chi Tiết Đơn Đặt Hàng phải tương ứng tồn với mã đơn đặt hàng – order_id bảng Đơn Đặt Hàng) Ràng buộc Hàng hóa cung cấp bao gồm Chi tiết đơn đặt hàng – R3: ∀ t ∊ Order_details, ∃! t’ ∊ Item, t.item_id = t’.item_id (Trong quan hệ bảng Chi Tiết Đơn Đặt Hàng bảng Hàng Hóa Cung Cấp, giá trị mã hàng hóa cung cấp – item_id dịng bảng Chi Tiết Đơn Đặt Hàng phải tương ứng tồn với mã hàng hóa cung cấp – item_id bảng bảng Hàng Hóa Cung Cấp) + Ràng buộc khác: Ràng buộc thời hạn hoàn thành đơn đặt hàng – R4: ∀ t ∊ Order_details, t.order_date + ≤ t.order_due (Đơn đặt hàng phải hồn thành vịng ngày kể từ ngày đặt) - Bảng Tầm Ảnh Hưởng: R1 Thêm Order_details + Xóa Sửa + (order_id, item_id) 15 Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 R2 Thêm Order_details + + (order_id) Orders R3 Thêm Order_details + Thêm Item + (order_date, order_due) + + (order_id) Xóa Sửa + (item_id) Item R4 Sửa Xóa + + (item_id) Xóa Sửa + (order_date, order_due) 6/ Bảng Hàng Hóa Cung Cấp – Item: Mã hàng hóa cung cấp (item_id) PK bảng Hàng hóa cung cấp - Item FK bảng Chi tiết đơn đặt hàng - Order_details - Đặc tả hình thức: + Ràng buộc khóa chính: Ràng buộc mã hàng hóa cung cấp – R1: t1, t2 ∊ Item, t1 ≠ t2 → t1.item_id ≠ t2.item_id (Trong Bảng Hàng Hóa Cung Cấp – Item, dịng có mã mặt hàng – item_id không phép trùng nhau) + Ràng buộc khóa ngoại: Ràng buộc mã Nhà cung cấp hàng hóa – R2: ∀ t ∊ Item, ∃! t’ ∊ Supplier, t.supplier_id = t’.supplier_id (Trong quan hệ bảng Hàng Hóa Cung Cấp bảng Nhà Cung Cấp, giá trị mã nhà cung cấp – supplier_id dòng bảng Hàng Hóa Cung Cấp phải tương ứng tồn với mã nhà cung cấp – supplier_id bảng Nhà Cung Cấp) 16 Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 - Bảng Tầm Ảnh Hưởng: R1 Thêm Item + Xóa Sửa + (item_id) R2 Thêm Item + Xóa Sửa + (supplier_id) Supplier + + (supplier_id) 7/ Bảng Nhà Cung Cấp – Supplier: Mã nhà cung cấp (supplier_id) PK bảng Nhà cung cấp - Supplier FK bảng Hàng hóa cung cấp - Item cho biết mặt hàng nhà cung cấp - Đặc tả hình thức: + Ràng buộc khóa chính: Ràng buộc mã nhà cung cấp – R1: t1, t2 ∊ Supplier, t1 ≠ t2 → t1.supplier_id ≠ t2.supplier_id (Trong Bảng Nhà Cung Cấp – Supplier, dịng có mã nhà cung cấp – supplier_id không phép trùng nhau) - Bảng Tầm Ảnh Hưởng: R1 Thêm Supplier + Xóa Sửa + (supplier_id) 17 Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 VI/ Phụ thuộc hàm chuẩn hóa: Employee (emp_id, first_name, last_name, birth_date, sex, salary, super_id, branch_id) F (emp_id first_name, last_name, birth_date, sex, salary, super_id, branch_id) Quan hệ Employee chứa thuộc tính đơn, tất thuộc tính khơng khố phụ thuộc vào khố (emp_id) khơng phụ thuộc bắc cầu vào khoá Đạt chuẩn 3NF Branch (branch_id, branch_name, manager_id) F (branch_id branch_name, manager_id) Quan hệ Branch chứa thuộc tính đơn, tất thuộc tính khơng khố phụ thuộc vào khố (branch_id) khơng phụ thuộc bắc cầu vào khoá Đạt chuẩn 3NF Client (client_id, client_name, client_contact, client_address, branch_id) F (client_id client_name, client_contact, client_address, branch_id) Quan hệ Client chứa thuộc tính đơn, tất thuộc tính khơng khố phụ thuộc vào khố (client_id) khơng phụ thuộc bắc cầu vào khoá Đạt chuẩn 3NF Orders (order_id, order_date, order_due, order_subtotal, discount, client_id, emp_id) F (order_id order_date, order_due, order_subtotal, discount, client_id, emp_id) Quan hệ Orders chứa thuộc tính đơn, tất thuộc tính khơng khố phụ thuộc vào khố (order_id) khơng phụ thuộc bắc cầu vào khố Đạt chuẩn 3NF Order_details (order_id, item_id, order_unit, unit_cost) F (order_id, item_id order_unit, unit_cost) Quan hệ Orders chứa thuộc tính đơn, tất thuộc tính khơng khố phụ thuộc vào khố (order_id, item_id) khơng phụ thuộc bắc cầu vào khố Đạt chuẩn 3NF 18 Downloaded by vu ga (vuchinhhp2@gmail.com) lOMoARcPSD|18034504 Item (item_id, item_name, item_unit, item_price, supplier_id) F (item_id item_name, item_unit, item_price, supplier_id) Quan hệ Item chứa thuộc tính đơn, tất thuộc tính khơng khố phụ thuộc vào khố (item_id) khơng phụ thuộc bắc cầu vào khoá Đạt chuẩn 3NF Supplier(supplier_id, supplier_name, supplier_type, supplier_contact, supplier_address) F (supplier_id supplier_name, supplier_type, supplier_contact, supplier_address) Quan hệ Supplier chứa thuộc tính đơn, tất thuộc tính khơng khố phụ thuộc vào khố (supplier_id) khơng phụ thuộc bắc cầu vào khoá Đạt chuẩn 3NF 19 Downloaded by vu ga (vuchinhhp2@gmail.com) ... hàng đơn hàng, đơn đặt hàng có mã định danh mã đơn hàng, kèm theo ngày đặt hàng tổng giá trị đơn hàng Ngoài ra, chi tiết đơn đặt hàng bao gồm loại hàng hóa mà khách hàng đặt, giá thành mặt hàng, ... (Trong quan hệ bảng Chi Tiết Đơn Đặt Hàng bảng Đơn Đặt Hàng, giá trị mã đơn đặt hàng – order_id dòng bảng Chi Tiết Đơn Đặt Hàng phải tương ứng tồn với mã đơn đặt hàng – order_id bảng Đơn Đặt Hàng) ... buộc đơn đặt hàng khách hàng – R2: ∀ t ∊ Orders, ∃! t’ ∊ Client, t.client_id = t’.client_id (Trong quan hệ bảng Đơn Đặt Hàng bảng Khách Hàng, giá trị mã khách hàng – client_id dòng bảng Đơn Đặt Hàng