noteKHOA CÔNG NGHỆ THÔNG TINTRƯỜNG ĐẠI HỌC GIA ĐỊNH TIỂU LUẬNXÂY DỰNG CƠ SỞ DỮ LIỆU CHO VIỆCQUẢN LÝ CỬA HÀNG STARBUCKSMÔN: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆUNgành học: CÔNG NGHỆ THÔNG TINChuyên n
Trang 1note KHOA CÔNG NGHỆ THÔNG TIN TRƯỜNG ĐẠI HỌC GIA ĐỊNH
TIỂU LUẬN
XÂY DỰNG CƠ SỞ DỮ LIỆU CHO VIỆC QUẢN LÝ CỬA HÀNG STARBUCKS
COFFEE MÔN: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
Ngành học: CÔNG NGHỆ THÔNG TIN
Chuyên ngành (nếu có): KỸ THUẬT PHẦN MỀM
Tên giảng viên: TS TRẦN HOÀI THUẬN
Sinh viên thực hiện: NGUYỄN ĐỨC TUẤN
TP Hồ Chí Minh, tháng 4 năm 2024
Trang 2Khoa/Viện: ……CÔNG NGHỆ THÔNG TIN ………
NHẬN XÉT VÀ CHẤM ĐIỂM CỦA GIẢNG VIÊN TIỂU LUẬN MÔN: ……HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU …………
1 Họ và tên sinh viên: …………NGUYỄN ĐỨC TUẤN ………
2 Tên đề tài: XÂY DỰNG CƠ SỞ DỮ LIỆU CHO VIỆC QUẢN LÝ CỬA HÀNG STARBUCKS COFFEE
3 Nhận xét: a) Những kết quả đạt được:
b) Những hạn chế:
4 Điểm đánh giá (theo thang điểm 10, làm tròn đến 0.5): Sinh viên:……….
Điểm số: ……….…… Điểm chữ: ………
TP HCM, ngày … tháng … năm 20……
Giảng viên chấm thi
(Ký và ghi rõ họ tên)
Trang 3CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI
1.1 Tên đề tài
Xây dựng cơ sở dữ liệu cho việc quản lý cửa hàng Starbucks Coffee bằng SQL Server
1.2 Cơ sở, hoàn cảnh, lí do hoàn thành đề tài
Trong ngành dịch vụ ẩm thực và bán lẻ, quản lý hiệu quả các cửa hàng Starbucks Coffee là một yếu tố quan trọng để đảm bảo chất lượng dịch vụ và tăng trưởng kinh doanh Sự phát triển của công nghệ thông tin đã tạo ra cơ hội cho việc xây dựng cơ sở dữ liệu để quản lý thông tin liên quan đến các cửa hàng Starbucks Coffee, từ quản lý kho hàng đến thông tin khách hàng và doanh thu.
1.3 Mục tiêu của đề tài Mục tiêu chính
Xây dựng cơ sở dữ liệu cho việc quản lý cửa hàng Starbucks Coffee, bao gồm các bảng dữ liệu về sản phẩm, đơn hàng, khách hàng, nhân viên và doanh thu Thiết kế các quan hệ giữa các bảng dữ liệu để đảm bảo tính nhất quán và hiệu quả trong việc truy vấn và xử lý dữ liệu Phát triển giao diện người dùng để quản lý cơ
sở dữ liệu, bao gồm các chức năng nhập liệu, xem thông tin và tạo báo cáo
1.4 Ý nghĩa của đề tài
1.4.1 Ý nghĩa đối với quản lý cửa hàng Starbucks Coffee:
Giúp quản lý dễ dàng theo dõi lượng hàng tồn kho, doanh thu và thông tin khách hàng Tối ưu hóa quá trình quản lý cửa hàng và ra quyết định dựa trên dữ liệu
1.4.2 Ý nghĩa đối với công ty Starbucks Coffee:
Nâng cao hiệu suất hoạt động và tăng cường trải nghiệm khách hàng thông qua việc quản lý dữ liệu hiệu quả Tạo ra cơ sở dữ liệu cung cấp thông tin chi tiết và kịp thời cho việc phân tích kinh doanh và định hình chiến lược
Trang 41.5 Phạm vi thực hiện Xây dựng cơ sở dữ liệu bao gồm các bảng chính:
Sản phẩm, Đơn hàng, Khách hàng, Nhân viên, Doanh thu Thiết kế các quan hệ giữa các bảng dữ liệu để đảm bảo tính nhất quán và hiệu quả trong việc truy vấn
và xử lý dữ liệu
1.6 Phương pháp thực hiện đề tài
Nghiên cứu và phân tích yêu cầu: Xác định các nhu cầu quản lý của cửa hàng Starbucks Coffee và thiết kế cấu trúc cơ sở dữ liệu dựa trên các yêu cầu này Phát triển và kiểm thử: Sử dụng SQL Server để triển khai cơ sở dữ liệu và phát triển giao diện người dùng Thực hiện kiểm thử để đảm bảo tính nhất quán và hiệu quả của hệ thống.
Tối ưu hóa và điều chỉnh: Tiến hành tối ưu hóa cơ sở dữ liệu và giao diện người dùng để đảm bảo hiệu suất và trải nghiệm người dùng tốt nhất.
Trang 5CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
2.1 Mô tả bài toán
Một hệ thống chuỗi cửa hàng Starbucks Coffee Việt Nam có nhiều chi nhánh ở nhiều quận huyện khác nhau Các hoạt động ở mỗi chi nhánh đều theo mô hình chung gồm: nhập hàng, bán hàng,… Để các hoạt động này được diễn ra thuận lợi, chúng ta cần có một cơ sở dữ liệu hoàn chỉnh theo quy trình: nhập hàng, bán hàng, các khoản phụ thu dịch vụ, tổng chi, doanh thu, lợi nhuận
•Nhập hàng:
Những nguyên liệu dùng pha chế các món đồ uống sẽ được nhập từ nhiều nhà cung cấp Nhân viên sẽ kiểm tra kho hàng bằng hệ thống, lập danh sách những nguyên liệu cần nhập và liên hệ với nhà cung cấp để đặt hàng Khi nhận được hàng, nhân viên sẽ tiến hành kiểm tra chất lượng, nếu đúng yêu cầu thì tiến hành xuất phiếu nhập hàng và thanh toán
• Bán hàng:
Khi khách hàng có nhu cầu mua đồ uống, nhân viên sẽ yêu cầu khách hàng cung cấp thông tin về: loại thức uống, hình thức, khu vực uống Hình thức uống bao gồm: dùng tại quán hoặc mang về
- Mang về: khách hàng sẽ được giảm 5% / thức uống so với giá hiệntại trên menu
- Dùng tại quán: khách hàng sẽ chọn khu vực ngồi ứng với mỗi loạigiá khác nhau
+ Khu A (có phòng riêng, dành cho những cuộc họp, hoặc những khách hàng cần sự yên tĩnh, có wifi riêng, có máy lạnh) giá thức uống sẽ tăng thêm 5% / thức uống so với giá trên menu
+ Khu B (phòng máy lạnh, có wifi) sẽ bán đúng giá trên menu Nhân viên xác nhận lại đúng loại thức uống mà khách đã chọn, sau đó tiến hành in hóa đơn và thanh toán trực tiếp tại quầy cho khách Khi hóa đơn được xuất, hệ thống sẽ tự động trừ số lượng nguyên liệu đã dùng dựa
Trang 6vào công thức của thức uống đó Nhờ đó, cơ sở dữ liệu sẽ quản lý được
số lượng còn lại của nguyên liệu để có kế hoạch nhập hàng hợp lý, và đốichiếu với số lượng trên thực tế nhằm đánh giá được lượng nguyên liệu hao hụt
• Các khoản phụ thu dịch vụ:
Quán sẽ có một số khoản phụ thu như: quay phim tại quán phụ thu
300.000đ/giờ, chụp hình (quảng cáo, người mẫu, bộ ảnh kỉ niệm) phụ thu100.000đ/giờ Số tiền phụ thu này sẽ được lưu vào hệ thống thông qua phiếu phụ thu, để tính doanh thu
Trang 72.2 Mô tả chức năng hệ thống
Hệ thống quản lý cửa hàng Starbucks Coffee sẽ gồm các chức năng sau:
• Quản lý nhập nguyên liệu:
- Tìm nguyên liệu: khi cần kiểm tra số lượng nguyên liệu (kiểm tra tồn kho) hoặc khi xem thông tin nguyên liệu
- Cập nhật: sau khi đã xuất hóa đơn nhập hàng, số lượng của loại nguyên liệu sẽ được cập nhật lại trong hệ thống hoặc sau khi kiểm tra kho hàng trong thực tế, số lượng nguyên liệu cũng sẽ được cập nhật lại
- Thêm: thêm nguyên liệu mới khi có món mới
- Xóa: xóa nguyên liệu khi không còn dùng nữa
- Lưu phiếu nhập hàng: lưu lại phiếu nhập vào hệ thống sau mỗi lần nhập hàng
• Quản lý bán hàng:
- Tìm thức uống: giúp cho việc tìm thức uống để chọn thêm vào hóa đơn được nhanh và chính xác hơn
- Xem công thức: có thể dùng để xem lại trong những lúc cần thiết
- Chọn khu vực: sau khi xác định được vị trí khách muốn ngồi, hóa đơn sẽ được điều chỉnh giá phù hợp với khu vực đó
- Chọn thức uống: thức uống được thêm vào hóa đơn theo yêu cầu của khách
- In hóa đơn: sau khi hóa đơn được in, nguyên liệu để làm thức uống trong hóa đơn sẽ được tự động trừ vào hệ thống và tiền trên hóa đơn cũng sẽ được lưu lại để tính doanh thu
• Quản lý nhân viên:
- Thêm: khi có nhân viên mới, quản lý sẽ tạo cho nhân viên đó một tàikhoản để đăng nhập vào hệ thống
- Xóa: khi có nhân viên nghỉ việc, tài khoản của nhân viên đó cũng sẽ
Trang 8• Báo cáo:
- Lập báo cáo doanh thu: làm thống kê
– báo cáo theo doanh thu bán hàng và các khoản phụ thu theo ngày, tháng hoặc thức uống tùy vào yêu cầu của chủ quán
- Lập báo cáo nhập hàng: thống kê số lượng nguyên liệu, tiền nhập nguyên liệu đã nhập theo ngày, tháng, quý hoặc năm
- Lập báo cáo chi: có thể lập báo cáo chi tiền lương nhân viên, tiền điện, nước, mặt bằng, …
- Lập báo cáo lợi nhuận: lập báo cáo lợi nhuận (lợi nhuận = doanh thu– chi) theo ngày, tháng, quý hoặc năm
• Quản lý doanh thu:
- Xem doanh thu: giúp cho quản lý có thể xem và kiểm soát được doanh thu
phân quyền sử dụng phần mềm cho 4 nhóm: bán hàng, quản lý, kiểm kho
và giám đốc khi đăng nhập vào hệ thống
- Nhân viên:
+ Được phép xem và thêm vào bảng: HOADON,
CHITIET_HOADON, PHIEUPHUTHU, PHIEUCHI
+ Chỉ được quyền xem ở các bảng: LOAITHUCUONG,
THUCUONG, NGUYENLIEU, KHUVUC, CHINHANH,
CONGTHUC
- Kiểm kho: Được phép xem và thêm ở các bảng: PHIEUNHAP, CHITIET_PHIEUNHAP, NGUYENLIEU - Quản lý:
Trang 9+ Được phép xem, thêm và sửa ở các bảng: NHANVIEN, BAOCAO, CONGTHUC, KHUVUC, CHINHANH,
Trang 10CHƯƠNG 3: MÔ HÌNH QUAN HỆ ERD VÀ MÔ TẢ CÁC
BẢNG
3.1 Mô hình quan hệ erd
Hình 3 :Mô hình quan hệ erd
Trang 113.2 Mô tả các bảng
Trang 12Bảng 1.3: dbo.LOAITHUCUONG
Bảng 1.4: dbo.THUCUONG
Bảng 1.5: dbo.KHUVUC
Bảng 1.6: dbo.CONGTHUC
Trang 13HESOGIA Hệ số giá Float
Bảng 1.7: dbo.CHINHANH
Bảng 1.9: dbo.NHACUNGCAP
Trang 14Tên trường Mô tả Kiểu dữ liệu Độ dài
thu
thu
Bảng 1.10: dbo.PHIEUPHUTHU
Bảng 1.11: dbo.PHIEUCHI
cấp
Char
Bảng 1.12: dbo.PHIEUNHAP
Trang 15Tên trường Mô tả Kiểu dữ liệu Độ dài
đơn
datetime
Bảng 1.13: dbo.HOADON
Bảng 1.14: dbo.CHITIET_HOADON
Bảng 1.15: dbo.CHITIET_PHIEUNHAP
Bảng 1.16: dbo.NGUYENLIEU
Trang 16CHƯƠNG 4: CÀI ĐẶT CƠ SỞ DỮ LIỆU
Câu 4 Viết câu lệnh thêm bảng vào HOADON có mã hóa đơn là HD101,
mã nhân viên NV1, mã khu vực KV1, ngày lập 12/2/2024, tổng tiền là 83000
(mahd,manv,makv,ngaylap,tongtien) VALUES
('TU10','HD101',1)
Kết quả
Kết quả trước khi chạy
Trang 17Kết quả sau khi chạy
Trang 18Câu 6 Viết câu lệnh thêm vào bảng PHIEUCHI có mã phiếu chi là PC51,
mã nhân viên là NV5, nội dung chi là ‘rút doanh thu ngày’, ngày lập: 11/2/2024 và tổng tiền:15000000
Code INSERT INTO phieuchi
(mapc,manv,noidungchi,ngaylap,tongtien) VALUES
('PC51','NV5','rút doanh thu ngày','11-2-2024',15000000)
Kết quả
Kết quả trước khi chạy
Kết quả sau khi chạy
Trang 19Câu 7 Viết câu lệnh thêm vào bảng PHIEUNHAP có mã phiếu nhập là PN55, mã nhân viên là NV3, mã nhà cung cấp là NCC01, ngày lập 12/1/2024 và tổng tiền là 1200000.
Code INSERT INTO phieunhap
(mapn,manv,mancc,ngaylap,tongtien) VALUES
('PN55','NV3','NCC01','12-1-2024',1200000)
Kết quả
Câu 8 Viết câu lệnh thêm vào PHIEUPHUTHU có mã phiếu phụ thu PTT63, mã nhân viên là NV2, tên phiếu phụ thu là ‘Khách làm vỡ ly’, ngày lập 11/20/2024, số tiền phụ thu là 30000
Code INSERT INTO phieuphuthu
(maphieupt,manv,tenppt,ngaylap,sotien)
VALUES
('PTT63','NV2','Khách làm vỡ ly','11-20-2024',30000)
Trang 20Kết quả trước khi chạy
Kết quả sau khi chạy
Trang 21Câu 10 Viết câu lệnh sửa TENPPT của nhân viên có mã NV3 trong ngày 30/01/2024 thành 'Quay phim'.
Code UPDATE PHIEUPHUTHU
SET TENPPT = 'Quay phim'
WHERE MANV = 'NV3' AND CONVERT(DATE, NGAYLAP) = '2024-01-30'
Kết quả
Kết quả trước khi chạy
Kết quả sau khi chạy
Trang 22Câu 11.Tăng hệ số giá thêm 1 cho khu vực có nhiều người uống nhất.
SET HESOGIA = HESOGIA + 1 WHERE MAKV = 'KV1'
Kết quả
Kết quả trước khi chạy
Kết quả sau khi chạy
Trang 23Câu 12.Giảm 20% giá các thức uống không bán được trong tháng 1/2024.
SET DONGIA = DONGIA * 0.8 WHERE MATU NOT IN ( SELECT MATU FROM chitiethoadon join hoadon on hoadon.mahd = chitiethoadon.mahd WHERE MONTH(ngaylap) = 1 AND YEAR(ngaylap) = 2024 )
Kết quả
Kết quả trước khi chạy
Kết quả sau khi chạy
Trang 24Câu 13.Tăng thêm 50% giá các thức uống bán chạy nhất.
SET DONGIA = DONGIA * 1.5 WHERE MATU IN (
SELECT MATU FROM chitiethoadon join hoadon on hoadon.mahd = chitiethoadon.mahd GROUP BY MATU
HAVING SUM(soluong) >= ( SELECT TOP 1 SUM(soluong) tong FROM chitiethoadon
join hoadon on hoadon.mahd = chitiethoadon.mahd GROUP BY MATU
ORDER BY tong DESC) )
Kết quả
Kết quả trước khi chạy
Trang 25Kết quả sau khi chạy
Trang 26Câu 14.Viết câu lệnh xóa báo cáo của một nhân viên với MANV=NV5 vào ngày 31/01/2024.
WHERE MANV = 'NV5' AND CONVERT(DATE, NGAYLAP) = '2024-01-31'
Kết quả
Kết quả trước khi chạy
Kết quả sau khi chạy
Câu 15.Viết câu lệnh xóa phiếu phụ thu của nhân viên có mã là NV3 đã
Trang 27lập vào ngày 21/09/2023.
Code DELETE FROM PHIEUPHUTHUWHERE MANV = 'NV3' AND CONVERT(DATE, NGAYLAP) = '2023-09-21'
Kết quả
Kết quả trước khi chạy
Kết quả sau khi chạy
Câu 16.Xuất ra danh sách các thức uống có loại là Tea (mã: tea)
Code SELECT * FROM THUCUONG WHERE MALOAI = 'tea'
Trang 28Kết quả
Câu 17.Xuất ra danh sách thức uống không chứa nguyên liệu sữa đặc
Code SELECT DISTINCT T.MATU, T.TENTU FROM THUCUONG TLEFT JOIN CONGTHUC C ON T.MATU = C.MATU
LEFT JOIN NGUYENLIEU N ON C.MANL = N.MANL WHERE N.TENNL = N'Sữa đặc'
Kết quả
Câu 18.Xuất ra danh sách những loại thức uống có giá thấp hơn 50 ngàn
Code SELECT * FROM dbo.THUCUONG WHERE DONGIA < 50000
Trang 29WHERE PHIEUNHAP.MANCC = 'NCC01'
Kết quả
Trang 30Câu 20.Viết câu lệnh thống kê toàn bộ những nhà cung cấp đang cấp hàngcho hệ thống.
Code SELECT DISTINCT MANCC, TENNCCFROM dbo.NHACUNGCAP
Kết quả
Câu 21.Hãy liệt kê danh sách nhân viên theo chi nhánh 1, 2, 3
Code SELECT *FROM dbo.NHANVIEN
WHERE MACN IN ('CN1', 'CN2', 'CN3')
Kết quả
Trang 31Câu 22.Viết câu lệnh để liệt kê thức uống bán nhiều nhất.
Code SELECT TOP 1 MATU, SUM(SOLUONG) AS soluongFROM CHITIETHOADON
GROUP BY MATU ORDER BY soluong DESC;
Kết quả
Trang 32Câu 24.Viết câu lệnh thống kê tổng chi theo từng quý.
Code
SELECT DATEPART(QUARTER, NGAYLAP) AS Quarter, SUM(TONGTIEN) AS tongChi
FROM PHIEUCHI GROUP BY DATEPART(QUARTER, NGAYLAP)
Trang 33Câu 26.Viết câu lệnh để tính doanh thu toàn hệ thống năm 2023.
Trang 34Câu 28.Tính lợi nhuận toàn hệ thống năm 2023.
(SELECT SUM(PHIEUCHI.TONGTIEN) FROM dbo.PHIEUCHI JOIN dbo.NHANVIEN ON PHIEUCHI.MANV = NHANVIEN.MANV WHERE NHANVIEN.MACN = CHINHANH.MACN) AS LoiNhuan
FROM CHINHANH
Kết quả
Trang 35Câu 30.Thống kê số lượng tồn của tất cả các nguyên liệu còn dưới mức quy định.
Code
SELECT * FROM dbo.NGUYENLIEU WHERE SOLUONG < 100
Kết quả
Trang 40DANH MỤC TÀI LIỆU THAM KHẢO
1 Trích từ trang website: W3school.com
2 Trích từ trang website: Quangtrimang.com
3 Trích từ trang youtube: Tôi đi code dạo
4 Trích từ trang website: SQL Wikipedia tiếng việt
5 Trích từ trang website: mysql.com
6 Trích từ trang website: Codecademy
7 Trích từ trang website: khan academy
8 Trích từ trang website: learn Microsoft.com
9 Trích từ trang tài liệu của thầy Trần Hoài Thuận ở Đại Học Gia Định