Bảng Sản Phẩm SAN_PHAM SERI, MALSP, MAPN, MAGIOHANG, MAPBH, MAPT MALSP Nchar10 Foreign key, not Mã loại sản phẩm nullMAPN Nchar10 Foreign key, not Mã phiếu nhập null giảm giá giảm giá MA
Trang 1BỘ THÔNG TIN VÀ TRUYỀN THÔNG HỌC VIỆN CÔNG NGHỆBƯU CHÍNH VIỄN THÔNG CƠ SỞ TẠI THÀNH PHỐ HỒ CHÍ
MINH
KHOA CÔNG NGHỆ THÔNG TIN II
-o0o -BÁO CÁO ĐỀ TÀI
THIẾT KẾ CƠ SỞ DỮ LIỆU QUẢN LÝ BÁN LAPTOP
Giảng viên hướng dẫn: Th.S Lưu Nguyễn Kì Thư Sinh viên thực hiện: Lê Văn Lương N20DCCN038
Nguyễn Viết Sĩ N20DCCN059
Nguyễn Hữu Hiếu N20DCCN102
Môn: Cơ sở dữ liệu
Hồ Chí Minh, ngày 11 tháng 10 năm 2022
Trang 2Làm mục lục
Trang 31.Mục tiêu: Thiết kế…
2.Khảo sát thực tế bài toán:
3.Phân tích, thiết kế CSDL:
1 Loại sản phẩm (MALSP, TEN, GIA, ANH, MOTA, CPU, RAM,
HARDWARE, CARD, SCREEN, OS)
3 Đợt giảm giá (MAĐGG, NGAYBATDAU, NGAYKETTHUC, MOTA)
4 Hãng sản xuất (MAHANG, TENHANG)
5 Thể loại (MATL, TEN)
6 Nhà cung cấp (MANCC, TEN, DIACHI, SDT, EMAIL)
7 Nhân viên (MANV, HO, TEN, NGAYSINH, SDT)
11 Giỏ Hàng (IDGIOHANG, TRANGTHAI, NGAYTAO)
12 Khách hàng (CMND, HOTEN, DIACHI, NGAYSINH, SDT,
EMAIL)
15 Phiếu trả (MAPT, NGAYTRA)
Trang 416 Phiếu bảo hành (MAPBH, NGAYBATDAU, NGAYKETTHUC)
17 Tài khoản (IDTK, PASS)
18 Bình luận (IDBL, DIEM, MOTA)
b Mô hình ERD.
dạng chuẩn 3.
1 LOAISANPHAM (MALSP, TEN, GIA, ANH, MOTA, CPU, RAM, HARDWARE,
CARD, SCREEN, OS, MAHANG, MATL)
2 SANPHAM (SERI, MALSP, MAPN, MAGIOHANG, MAPBH, MAPT)
3 DOTGIAMGIA (MADGG, NGAYBATDAU, NGAYKETTHUC, MOTA, MANV)
4 HANGSANXUAT (MAHANG, TENHANG)
5 THELOAI (MaTL, TEN)
6 NHACUNGCAP (MANCC, TEN, EMAIL, DIACHI, SDT)
7 NHANVIEN (MANV, HO, TEN, NGAYSINH, SDT, IDTK)
Trang 58 PHIEUNHAP (MAPN, NGAYNHAPHANG, SOLUONG, MANV, MaĐĐH)
9 DOTDATHANG (MAĐĐH, NGAYDATHANG, MANV, MANCC, MAPN)
10 GIOHANG (MAGH, NGAYTAO, MASHIPPER, MAKH, MANV, MAHD)
11 KHACHHANG (MAKH, CMND, HO, TEN, DIACHI, NGAYSINH, SDT, EMAIL,
IDTK)
12 HOADON (MAHĐ, MASOTHUE, MANV, IDGIOHANG, MAPT)
13 BINHLUAN (IDBL, DIEM, MOTA, IDTK, SERI)
14 SHIPPER (MASHIPPER)
15 PHIEUTRA (MAPT, NGAYTRA, MANV, MAHĐ)
16 PHIEUBAOHANH (MAPBH, NGAYBATDAU, NGAYKETTHUC,
TRANGTHAI, MASP)
17 NHOMQUYEN (MANQ, TEN)
18 TAIKHOAN (IDTK, PASS, MAKH, MANV)
19 CT_DOTGIAMGIA (MALSP, MADGG, %GIAM)
20 CT_DONDATHANG (MAĐĐH, MALSP, SOLUONG, DONGIA)
21 CT_BAOHANH (MAPBH, MANV, MASHIPER, NGAYNHAN, TRANGTHAI,
NGAYTRA)
22 CT_PHANQUYEN (MANV, MANQ, VITRI)
23 CT_CUNGCAP (MALSP, MANCC, GIA)
d Mô hình diagram
TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Trang 6e Từ điển dữ liệu
1. Bảng Loại sản phẩm
LOAISANPHAM (MALSP, TEN, GIA, ANH, MOTA, CPU, RAM,
HARDWARE, CARD, SCREEN, OS, MAHANG, MATL)
TENLSP Nvarchar(50) Unique key, Not Tên loại sản
phẩmCPU Nvarchar (20) default: ‘ ‘ Thông tin về
CPURAM Nvarchar (20) default: ‘ ‘ Thông tin về
RAMHARDWARE Nvarchar (20) default: ‘ ‘ Thông tin về
HARDWARECARD Nvarchar (20) default: ‘ ‘ Thông tin về
Trang 7CARDSCREEN Nvarchar (20) default: ‘ ‘ Thông tin về
SCREEN
OS Nvarchar (20) default: ‘ ‘ Thông tin về OSMAHANG Nchar(10) Foreign key, not Mã hãng sản xuất
nullMATL Nchar(10) Foreign key, not Mã thể loại
null
2 Bảng Sản Phẩm SAN_PHAM (SERI, MALSP, MAPN, MAGIOHANG, MAPBH, MAPT)
MALSP Nchar(10) Foreign key, not Mã loại sản phẩm
nullMAPN Nchar(10) Foreign key, not Mã phiếu nhập
null
giảm giá
giảm giá
MANV Nchar (10) Foreign key, not Mã nhân viên
null
4 Bảng hãng sản xuất
HANGSX (MAHANG, TENHANG)
Trang 8MAHSX Nchar(10) Primary key Mã hãng sản xuất
5 Bảng thể loại
THELOAI (MATL, TEN)
6 Bảng nhà cung cấp
NHACUNGCAP (MANCC, TEN, EMAIL, DIACHI, SDT)
SDT Nchar(11) Unique, not null Số điện thoại
7 Bảng nhân viên
NHANVIEN (MANV, HO, TEN, NGAYSINH, SDT, IDTK)
SDT Nvarchar(11) Unique key, not Số điện thoại
nullIDTK Nvarchar(40) Foreign key, not Mã tài khoản
null
8 Bảng phiếu nhập
PHIEUNHAP (MAPN, NGAYNHAPHANG, MANV, MAĐĐH)
Trang 9G hàngMANV Nchar(10) Foreign key, not Mã nhân viên
nullMAĐĐH Nchar(10) Foreign key, not Mã đơn đặt
9.Bảng đơn đặt hàng
DONDATHANG (MAĐĐH, NGAYDATHANG, MANV, MANCC, MAPN)
MaĐĐH Nchar(10) Primary key Mã đơn đặt hàng
MANV Nchar(10) Foreign key, not Mã nhân viên
nullMANCC Nchar(10) Foreign key, not Mã nhà cung cấp
null
10 Bảng giỏ hàng
GIOHANG (MAGH, NGAYTAO, MASHIPPER, MAKH, MANV, MAHD)
hàngMASHIPPER Nchar(10) Foreign key, not Mã nhân viên
MAKH Nchar(10) Foreign key, not Mã khách hàng
nullMANV Nchar(10) Foreign key, not Mã nhân viên tạo
Trang 10CMND Nvarchar (12) Unipue, not null Chứng minh nhân
dân
DIACHI Nvarchar (200) default: ‘ ‘ Địa chỉ
SDT Nvarchar (11) Unipue, not null Số điện thoạiEMAIL Nvarchar (20) Unipue, not null Địa chỉ email
12.Bảng hóa đơn
HOADON (MAHĐ, MASOTHUE, MANV, IDGIOHANG, MAPT)
MANV Nchar(10) Foreign key, not Mã nhân viên
nullIDGIOHANG Nchar(10) Foreign key, not Mã giỏ hàng
null
13.Bảng bình luận BINHLUAN (IDBL, DIEM, MOTA, IDTK, SERI)
IDTK Nchar(40) Foreign key, not Mã tài khoản
null
null
Trang 1114.Bảng shipper
SHIPPER (MASHIPPER)
giao hàng
15.Bảng phiếu trả
PHIEUTRA (MAPT, NGAYTRA, MANV, MAHĐ)
MANV Nchar(10) Foreign key, not Mã nhân viên
null
null
16 Bảng phiếu bảo hành
PHIEUBAOHANH (MAPBH, NGAYBATDAU, NGAYKETTHUC,
TRANGTHAI, MASP, MANV)
hành
TRANGTHAI Nvarchar(30) default: “TỐT” Trạng tháiMASP Nchar(10) Foreign key, not Mã sản phẩm
nullMANV Nchar(10) Foreign key, not Mã nhân viên
null
17 Bảng phân quyền
PHANQUYEN (MANQ, TEN)
TENQUYEN Nvarchar(40) Foreign key, not Tên quyền
null
Trang 1218 Bảng Tài khoản TAIKHOAN (IDTK, PASS, MAKH, MANV)
19 Bảng chi tiết đợt giảm giá
CT_DOTGIAMGIA (MALSP, MADGG, %GIAM)
MALSP Nchar(10) Foreign key, not Mã loại sản phẩm
nullMADGG Nchar(10) Foreign key, not Mã đợt giảm giá
null
Primary key: MALSP + MADGG
20 Bảng chi tiết đơn đặt hàng
CT_DONDATHANG (MAĐĐH, MALSP, SOLUONG, DONGIA)
MAĐĐH Nchar(10) Foreign key, not Mã đơn đặt hàng
nullMALSP Nchar(10) Foreign key, not Mã loại sản phẩm
null
Primary key: MAĐĐH + MALSP
21 Bảng chi tiết bảo hành
CT_PHIEUBAOHANH (MAPBH, MANV, MASHIPER, NGAYNHAN,
TRANGTHAI, NGAYTRA)
MAPBH Nchar(10) Foreign key, not Mã phiếu bảo
MANV Nchar(10) Foreign key, not Mã nhân viên
Trang 13nullMASHIPPER Nchar(10) Foreign key, not Mã nhân viên
TRANGTHAI Nvarchar(50) default: “TỐT” Trạng thái
Primary key: MAPBH + MANV + MASHIPPER
22 Bảng chi tiết phân quyền
CT_PHANQUYEN (MANV, MANQ, VITRI)
MANV Nchar(10) Foreign key, not Mã nhân viên
nullMANQ Nchar(10) Foreign key, not Mã nhóm quyền
null
Primary key: MANV + MANQ
23 Bảng chi tiết cung cấp
CT_CUNGCAP (MALSP, MANCC, GIA)
MALSP Nchar(10) Foreign key, not Mã loại sản phẩm
nullMANCC Nchar(10) Foreign key, not Mã nhà cung cấp
null
Primary key: MALSP + MANCC
Ràng buộc toàn vẹn
- Ràng buộc toàn vẹn liên bộ - 1 quan hệ
R1:Mỗi loại sản phẩm có một mã riêng, không trùng với loại sản phẩm khác
lsp1,lsp2 LOAISANPHAM:
lsp1 = lsp2 -> lsp1.MALSP = lsp2.MALSP
Cuối
Trang 14R1 Thêm Xóa Sửa(MALSP)
Trang 15R6: Mỗi nhà cung cấp có một mã riêng, không trùng với mã nhà cung cấp khác
Trang 16R10: Mỗi giỏ hàng có một mã riêng, không trùng với giỏ hàng khác
Trang 18R20: chi tiết của mỗi đợt giảm giá đối với mỗi loại sản phẩm sẽ có một mã là
tổ hợp của mã đợt giảm giá và mã loại sản phẩm riêng biệt, không trùng với chi
tiết đợt giảm giá khác
ctdgg1,ctdgg2 CT_DOTGIAMGIA : ctdgg1 =ctdgg2
-> ctdgg1.MALSP = ctdgg2.MALSP AND ctdgg1.MADGG =
Trang 19R22: Mỗi chi tiết bảo hành sẽ có một mã kết hợp từ mã phiếu bảo hành,
mã nhân viên và mã shipper, không trùng vơi chi tiết bảo hành khác
R23: Mỗi chi tiết phân quyền sẽ có một mã kết hợp gồm mã nhân viên và mã
nhóm quyền, mã kết hợp này không được trùng với chi tiết phân quyền khác
R23: Mỗi chi tiết nhà cung cấp sẽ có một mã được kết hợp từ mã loại sản
phẩm, mã nhà cung cấp, không được trùng với chi tiết nhà cung cấp khác
Trang 20R24:Trong lược đồ quan hệ DOTGIAMGIA ta có
- Ràng buộc toàn vẹn một quan hệ về miền giá trị
R26: Trong lược đồ quan hệ NHANVIEN , có NGAYSINH < ngày hiện thời
Trang 21R28 Thêm Xóa Sửa(NGAYSINH)
R31: Trong lược đồ quan hệ NHOMQUYEN có TENQUYEN là Admin hoặc
Nhân viên quản lý kho hoặc Nhân viên bán hàng hoặc Nhân viên quản lý nhân
sự hoặc
Nhân viên bảo hành
nv NHANVIEN:
OR nv.TENQUYEN = N’Admin’
OR nv.TENQUYEN = N’Nhân viên quản lý kho’
OR nv.TENQUYEN = N’Nhân viên bán hàng’
OR nv.TENQUYEN = ‘Nhân viên quản lý nhân sự’
OR nv.TENQUYEN = N’Nhân viên bảo hành’
Trang 23R36 Thêm Xóa Sửa(MATL)
Trang 25R45: Mỗi phiếu nhập có một đơn đặt hàng
Trang 28R57 Thêm Xóa Sửa(IDTK)
R61: Mỗi hóa đơn có một phiếu trả, mỗi phiếu trả thuộc về một hóa
đơn pt PHIEUTRA, ¥ hd HOADON:
Trang 29R62: Mỗi phiếu bảo hành đều chỉ có giá trị cho một sản phẩm
R63: Mỗi phiếu bảo hành chỉ được lập bởi một nhân viên, một nhân viên có
thể lập nhiều phiếu bảo hành
Trang 32R74 Thêm Xóa Sửa(MANQ)
Ràng buộc toàn vẹn nhiều quan hệ , liên thuộc tính
R77: Số lượng mua được ghi trong chi tiết đơn đặt hàng phải lớn hơn số
lượng tồn
ctddh.MALSP = lsp.MALSP thì ctddh.SOLUONG < lsp.SLTON