- MANV là khóa dự bị, các thuộc tính còn lại phụ thuộc hàm đầy đủ vào MANV: lược đồ ở dạng chuẩn 2NF.. - NGAYLAMVIEC là khóa dự bị, các thuộc tính còn lại phụ thuộc hàm đầy đủ vào NGAYLA
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN I
BÁO CÁO BÀI TẬP LỚN
CƠ SỞ DỮ LIỆU
ĐỀ TÀI: XÂY DỰNG CƠ SỞ DỮ LIỆU QUẢN LÝ CỬA HÀNG THỰC
PHẨM
Giảng viên hướng dẫn : Trần Quốc Khánh
Nhóm thảo luận : 06 Thành viên nhóm : Nguyễn Quang Chính B20DCCN115
Nguyễn Đức Nhật B20DCCN483 Phạm Thanh Trang B20DCCN689 Ngô Sỹ Tuấn B20DCAT166
Hà Nội, năm 2022
Trang 2GIỚI THIỆU ĐỀ TÀI:
Phát triển từ ý tưởng quản lý cửa hàng bằng việc ứng dụng công nghệ vào cuộc sống, nhóm chúng em xây dựng cơ sở dữ liệu quản lý cửa hàng thực phẩm nhằm giúp người quản lý cửa hàng đơn giản trong công tác quản lý, minh bạch các hoạt động của cửa hàng, từ đó kiểm soát được mọi hoạt động kinh doanh và thúc đẩy doanh thu của hàng.
Cơ sở dữ liệu được xây dựng với đầy đủ các chức năng quản lý cửa hàng thực phẩm như: nhập – xuất hàng hóa trong kho, quản lý kho, quản lý từng nhân viên, quản lý hóa đơn giao dịch giữa khách hàng với người bán,….
Trang 3MỤC LỤC
GIỚI THIỆU ĐỀ TÀI: 2
PHẦN 1: PHÂN TÍCH YÊU CẦU: 4
1 Ứng dụng của hệ CSDL: 4
2 Các yêu cầu về dữ liệu lưu trữ: 4
PHẦN 2: THIẾT KẾ LƯỢC ĐỒ THỰC THỂ LIÊN KẾT: 4
1 Xác định thực thể và thuộc tính 4
2 Xác định quan hệ giữa các thực thể 4
3 Lược đồ E-R 7
PHẦN 3: CHUYỂN LƯỢC ĐỒ E-R SANG LƯỢC ĐỒ QUAN HỆ 8
PHẦN 4: LƯỢC ĐỒ DỮ LIỆU 9
1 Lược đồ 9
2 Một số câu truy vấn 9
a Tìm sản phẩm có doanh thu lớn nhất 9
b Tìm nhân viên làm việc nhiều giờ nhất 9
c Tìm phương thức thanh toán được sử dụng nhiều nhất 9
PHẦN 5: CHUẨN HÓA 10
3
Trang 4PHẦN 1: PHÂN TÍCH YÊU CẦU:
1 Ứng dụng của hệ CSDL:
- Quản lý danh sách các nhân viên trong cửa hàng.
- Quản lý việc nhập, xuất hàng hóa trong cửa hàng, các hóa đơn,…
- Quản lý các khách hàng và các đối tác cung cấp hàng hóa.
- ….
2 Các yêu cầu về dữ liệu lưu trữ:
- Dữ liệu về các nhân viên
- Dữ liệu về hàng hóa
- Dữ liệu về thông tin khách hàng
- Dữ liệu về hóa đơn mua hàng
- Dữ liệu về các đối tác cung cấp hàng
- …
PHẦN 2: THIẾT KẾ LƯỢC ĐỒ THỰC THỂ LIÊN KẾT:
1 Xác định thực thể và thuộc tính
vào làm, ngày sinh, nhiệm
vụ, số điện thoại, lương
thực thể lưu trữ thông tin các nhân viên
KHÁCH HÀNG mã khách hàng, họ tên, số
điện thoại Thực thể lưu trữ thông tin khách hàng
phẩm, ngày sản suất, hạn
sử dụng, giá
thực thể lưu trữ thông tin chi tiết sản phẩm
LOẠI SẢN PHẨM mã loại sản phẩm, tên loại
sản phẩm,vị trí, mô tả chi tiết
thực thể lưu trữ thông tin loại sản phẩm
NHÀ CUNG CẤP mã nhà cung cấp, tên nhà
cung cấp, số điện thoại, địa chỉ
thực thể lưu trữ thông tin nhà cung cấp
tổng giá, hình thức thanh toán
thực thể lưu trữ thông tin hóa đơn sẽ cấp cho khách hàng tại quầy thu ngân
CA LÀM VIỆC Tên ca ,giờ bắt đầu, giờ
kết thúc, ngày làm việc
thực thể lưu trữ thông tin các ca làm việc
HÌNH THỨC THANH
TOÁN
Mã hình thức, tên hình thức
Thực thể lưu trữ thông tin
về phương thức thanh toán
2 Xác định quan hệ giữa các thực thể
Trang 51
HÓA ĐƠN
Lập
NHÂN VIÊN
n
n
SẢN PHẨM
Cung cấp
NHÀ CUNG
CẤP
1 n
LOẠI SẢN PHẨM
Thuộc
SẢN PHẨM
CA LÀM VIỆC
Đi làm
NHÂN VIÊN
n n
SẢN PHẨM
Bao gồm
HÓA ĐƠN
Trang 61
HÓA ĐƠN
Nhận
KHÁCH
HÀNG
n 1
NHÀ CUNG CẤP
Phụ trách
NHÂN VIÊN
1 n
PHƯƠNG THỨC THANH TOÁN
Áp dụng
Hóa Đơn
Trang 73 Lược đồ E-R
7
Trang 8PHẦN 3: CHUYỂN LƯỢC ĐỒ E-R SANG LƯỢC ĐỒ QUAN HỆ
NHAN_VIEN
MAN
V HONV TENNV SODIENTHOAI NGAYSINH CHUCVU
LUON
G NGAYVAOLAM DI_LAM
MAN
V TENCA GIOBATDAU SOGIOLAMVIEC NGAYLAMVIEC
NHA_CUNG_CAP
MANC
C TENNCC SODIENTHOAI DIACHI NGUOIPHUTRACH
CUNG_CAP
MANC
C MASP SOLUONG NGAYNHAP
SAN_PHAM
MASP TENSP NGAYSANSUAT HANSUDUNG GIA LOAISP
LOAI_SAN_PHAM
MALOAI TENLOAI MOTA VITRIBAYBAN
CHI_TIET_HOA_DON ( BAO_GOM)
MASP MAHD SOLUONG
HOA_DON
MAHD TONGGIA NGAYLAP NGUOILAP KHACHHANG HINHTHUCTHANH TOAN
KHACH_HANG
MAKHACH TENKHACH SODIENTHOAI
HINH_THUC_THANH_TOAN
Trang 9PHẦN 4: LƯỢC ĐỒ DỮ LIỆU
1 Lược đồ
2 Một số câu truy vấn
a Tìm sản phẩm có doanh thu lớn nhất
MASP J∑( SOLUONG)(chi¿)(chi¿ )
b Tìm nhân viên làm việc nhiều giờ nhất
MANV J∑( SOGIOLAMVIEC)(di lam)(di lam)
c Tìm phương thức thanh toán được sử dụng nhiều nhất
9 MAH INHTHUC TENHINHTHUC
Trang 10R ← hoa don∨¿<¿hoa don HINHTHUCTHANHTOAN =hinh¿ MAHINHTHUC hinh¿
R 1 (MAHINHTHUC , SOLANDUNG)← π R MAHINHTHUC , R.MAHINHTHUC J COUNT ( R.HINHTHUCTHANHTOAN )(R)(R)
MD (MAXLANDUNG)← J MAX(SOLANDUNG)(R 1)
Trang 11PHẦN 5: CHUẨN HÓA
Chuẩn hóa 10 lược đồ quan hệ về dạng chuẩn Boycee-Codd
NHAN_VIEN(MAVN, HONV, TENNV, SODIENTHOAI, NGAYSINH,
CHUCVU, LUONG, NGAYVAOLAM)
F1 = {MANVHONV, MANVTENNV, MANVSODIENTHOAI,
MANVNGAYSINH, MANVCHUCVU, MANVLUONG,
MANVNGAYVAOLAM}
- Lược đồ quan hệ chỉ chứa các thuộc tính đơn: lược đồ ở dạng chuẩn 1NF
- MANV là khóa dự bị, các thuộc tính còn lại phụ thuộc hàm đầy đủ vào MANV: lược đồ ở dạng chuẩn 2NF
- MANV là siêu khóa, không tồn tại phụ thuộc bắc cầu: lược đồ ở dạng chuẩn 3NF
- Không có thuộc tính nào phụ thuộc vào thuộc tính không khóa: lược
đồ thuộc dạng chuẩn Boycee-Codd
DI_LAM(NGAYLAMVIEC, MANV, TENCA, GIOBATDAU,
SOGIOLAMVIEC)
F2 = {NGAYLAMVIECMANV, NGAYLAMVIECTENCA,
NGAYLAMVIECGIOBATDAU,
NGAYLAMVIECSOGIOLAMVIEC}
- Lược đồ quan hệ chỉ chứa các thuộc tính đơn: lược đồ ở dạng chuẩn 1NF
- NGAYLAMVIEC là khóa dự bị, các thuộc tính còn lại phụ thuộc hàm đầy đủ vào NGAYLAMVIEC: lược đồ ở dạng chuẩn 2NF
- NGAYLAMVIEC là siêu khóa, không tồn tại phụ thuộc bắc cầu: lược đồ ở dạng chuẩn 3NF
- Không có thuộc tính nào phụ thuộc vào thuộc tính không khóa: lược
đồ thuộc dạng chuẩn Boycee-Codd
NHA_CUNG_CAP(MANCC, TENNCC, SODIENTHOAI, DIACHI, NGUOIPHUTRACH)
F3 = {MANCCTENNCC, MANCCSODIENTHOAI,
MANCCDIACHI, MANCCNGUOIPHUTRACH}
- Lược đồ quan hệ chỉ chứa các thuộc tính đơn: lược đồ ở dạng chuẩn 1NF
- MANCC là khóa dự bị, các thuộc tính còn lại phụ thuộc hàm đầy đủ vào MANCC: lược đồ ở dạng chuẩn 2NF
- MANCC là siêu khóa, không tồn tại phụ thuộc bắc cầu: lược đồ ở dạng chuẩn 3NF
- Không có thuộc tính nào phụ thuộc vào thuộc tính không khóa: lược
đồ thuộc dạng chuẩn Boycee-Codd
CUNG_CAP(MANCC, MASP, NGAYNHAP, SOLUONG)
F4 = {MANCC SOLUONG, MASP SOLUONG,
NGAYNHAPSOLUONG}
11
Trang 12- Lược đồ quan hệ chỉ chứa các thuộc tính đơn: lược đồ ở dạng chuẩn 1NF
- MANCC - MASP - NGAYNHAP là khóa dự bị, thuộc tính
SOLUONG phụ thuộc hàm đầy đủ vào MANCC - MASP -
NGAYNHAP: lược đồ ở dạng chuẩn 2NF
- MANCC - MASP - NGAYNHAP là siêu khóa, không tồn tại phụ thuộc bắc cầu: lược đồ ở dạng chuẩn 3NF
- Không có thuộc tính nào phụ thuộc vào thuộc tính không khóa: lược
đồ thuộc dạng chuẩn Boycee-Codd
SAN_PHAM(MASP, TENSP, NGAYSANSUAT,HANSUDUNG,GIA, LOAISP)
F5 = {MASPTENSP, MASPNGAYSANSUAT,
MASPHANSUDUNG, MASPGIA, MASPLOAISP}
- Lược đồ quan hệ chỉ chứa các thuộc tính đơn: lược đồ ở dạng chuẩn 1NF
- MASP là khóa dự bị, các thuộc tính còn lại phụ thuộc hàm đầy đủ vào MASP: lược đồ ở dạng chuẩn 2NF
- MASP là siêu khóa, không tồn tại phụ thuộc bắc cầu: lược đồ ở dạng chuẩn 3NF
- Không có thuộc tính nào phụ thuộc vào thuộc tính không khóa: lược
đồ thuộc dạng chuẩn Boycee-Codd
LOAI_SAN_PHAM(MALOAI, TENLOAI, MOTA, VITRBAYBAN) F6 = {MALOAITENLOAI, MALOAIMOTA,
MALOAIVIRIBAYBAN}
- Lược đồ quan hệ chỉ chứa các thuộc tính đơn: lược đồ ở dạng chuẩn 1NF
- MALOAI là khóa dự bị, các thuộc tính còn lại phụ thuộc hàm đầy đủ vào MALOAI: lược đồ ở dạng chuẩn 2NF
- MALOAI là siêu khóa, không tồn tại phụ thuộc bắc cầu: lược đồ ở dạng chuẩn 3NF
- Không có thuộc tính nào phụ thuộc vào thuộc tính không khóa: lược
đồ thuộc dạng chuẩn Boycee-Codd
CHI_TIET_HOA_DON (MASP, MAHD, SOLUONG)
F7 = {MASPSOLUONG, MAHDSOLUONG}
- Lược đồ quan hệ chỉ chứa các thuộc tính đơn: lược đồ ở dạng chuẩn 1NF
- MASP - MAHD là khóa dự bị, thuộc tính SOLUONG phụ thuộc hàm đầy đủ vào MASP - MAHD: lược đồ ở dạng chuẩn 2NF
- MASP - MAHD là siêu khóa, không tồn tại phụ thuộc bắc cầu: lược
đồ ở dạng chuẩn 3NF
- Không có thuộc tính nào phụ thuộc vào thuộc tính không khóa: lược
đồ thuộc dạng chuẩn Boycee-Codd
Trang 13 HOA_DON (MAHD, TONGGIA, NGAYLAP, NGUOILAP,
KHACHHANG, HINHTHUCTHANHTOAN)
F8 = {MAHDTONGGIA, MAHDNGAYLAP, MAHDNGUOILAP, MAHDKHACHHANG, MAHDHINHTHUCTHANHTOAN}
- Lược đồ quan hệ chỉ chứa các thuộc tính đơn: lược đồ ở dạng chuẩn 1NF
- MAHD là khóa dự bị, các thuộc tính còn lại phụ thuộc hàm đầy đủ vào MAHD: lược đồ ở dạng chuẩn 2NF
- MAHD là siêu khóa, không tồn tại phụ thuộc bắc cầu: lược đồ ở dạng chuẩn 3NF
- Không có thuộc tính nào phụ thuộc vào thuộc tính không khóa: lược
đồ thuộc dạng chuẩn Boycee-Codd
KHACK_HANG (MAKHACH, TENKHACH, SODIENTHOAI)
F9 = {MAKHACHHANGTENKHACH,
MAKHACHSODIENTHOAI}
- Lược đồ quan hệ chỉ chứa các thuộc tính đơn: lược đồ ở dạng chuẩn 1NF
- MAKHACH là khóa dự bị, các thuộc tính còn lại phụ thuộc hàm đầy
đủ vào MAKHACH: lược đồ ở dạng chuẩn 2NF
- MAKHACH là siêu khóa, không tồn tại phụ thuộc bắc cầu: lược đồ ở dạng chuẩn 3NF
- Không có thuộc tính nào phụ thuộc vào thuộc tính không khóa: lược
đồ thuộc dạng chuẩn Boycee-Codd
HINH_THUC_THANH_TOAN (MAHINHTHUC, TENHINHTHUC) F10 = {MAHINHTHUCTENHINHTHUC}
- Lược đồ quan hệ chỉ chứa các thuộc tính đơn: lược đồ ở dạng chuẩn 1NF
- MAHINHTHUC là khóa dự bị, thuộc tính TENHINHTHUC phụ thuộc hàm đầy đủ vào MAHINHTHUC: lược đồ ở dạng chuẩn 2NF
- MAHINHTHUC là siêu khóa, không tồn tại phụ thuộc bắc cầu: lược
đồ ở dạng chuẩn 3NF
- Không có thuộc tính nào phụ thuộc vào thuộc tính không khóa: lược
đồ thuộc dạng chuẩn Boycee-Codd
Sau khi chuẩn hóa 10 lược đồ, ta được 10 lược đồ ở dạng chuẩn Boycee-Codd
Nguyễn Đức Nhật:
- Phân tích vấn đề
- Tham gia thiết kế lược đồ E-R
- Chuyển đổi lược đồ quan hệ
- Hỗ trợ thiết kế cơ sở dữ liệu trên SQL server
- Chuẩn hóa
13
Trang 14- Viết biểu thức đại số cho 3 câu truy vấn.
Nguyễn Quang Chính:
- Phân tích vấn đề
- Tham gia thiết kế lược đồ E-R
- Hỗ trợ chuyển đổ lược đồ quan hệ
- Hỗ trợ chuẩn hóa
Ngô Sỹ Tuấn:
- Phân tích vấn đề
- Tham gia thiết kế lược đồ E-R
- Thiết kế cơ sở dữ liệu trên SQL server
- Hỗ trợ chuẩn hóa
- Hỗ trợ viết biểu thức đại số cho 3 câu truy vấn
Phạm Thanh Trang:
- Phân tích vấn đề
- Tham gia thiết kế lược đồ E-R
- Hỗ trợ thiết kế cơ sở dữ liệu trên SQL server
- Hỗ trợ chuẩn hóa
- Viết báo cáo
- Hỗ trợ viết biểu thức đại số cho 3 câu truy vấn