Chương 1 ĐẶC TẢ HỆ THỐNG 1.1 Mục đích, yêu cầu 1.2. Mô tả hệ thống 1.2.1. Quy trình nghiệp vụ 1.2.2. Quy tắc nghiệp vụ 1.4. Đặc tả các chức năng cần xây dựng 1.5. Phân chia công việc trong nhóm Chương 2 PHÂN TÍCH DỮ LIỆU HỆ THỐNG 2.1. Mô tả hệ thống dưới dạng mối quan hệ dữ liệu 2.2. Xây dựng mô hình liên kết thực thể ( mô tả cụ thể từng mối quan hệ sau đó vẽ mô hình liên kết thực thể) 2.3. Cách chuyển đổi từ ER sang mô hình quan hệ ( Mô tả qui tắc chuyển đổi và cách chuyển đổi từng tập thực thể và mối quan hệ) 2.4. Phân tích nhu cầu sử dụng thông tin 2.5. Vẽ mô hình quan hệ 2.6. Đặc tả các bảng
Trang 1HỌC VIỆN KĨ THUẬT QUÂN SỰ KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO Môn: Cơ Sở Dữ Liệu
Đề Tài: XÂY DỰNG CHƯƠNG TRÌNH QUẢN LÝ NHÀ HÀNG
Người Hướng Dẫn: GV Đỗ Thị Mai Hường Nhóm thực hiện: Nhóm 3
Thành viên nhóm:
MỤC LỤC Chương 1 ĐẶC TẢ HỆ THỐNG
1.1 Mục đích, yêu cầu
1.2 Mô tả hệ thống
1.2.1 Quy trình nghiệp vụ
1.2.2 Quy tắc nghiệp vụ
1.4 Đặc tả các chức năng cần xây dựng
1.5 Phân chia công việc trong nhóm
Chương 2 PHÂN TÍCH DỮ LIỆU HỆ THỐNG
2.1 Mô tả hệ thống dưới dạng mối quan hệ dữ liệu
2.2 Xây dựng mô hình liên kết thực thể ( mô tả cụ thể từng mối quan hệ sau đó vẽ mô hình liên kết thực thể)
2.3 Cách chuyển đổi từ ER sang mô hình quan hệ ( Mô tả qui tắc chuyển đổi và cách chuyển đổi từng tập thực thể và mối quan hệ) 2.4 Phân tích nhu cầu sử dụng thông tin
Trang 22.5 Vẽ mô hình quan hệ
2.6 Đặc tả các bảng
CHƯƠNG 1: ĐẶC TẢ HỆ THỐNG
1.1 Mục đích yêu cầu.
Rèn luyện các kỹ năng về xây dựng cơ sở dữ liệu , cài đặt , quản trị , thao tác và lập trình cơ sở dữ liệu và áp dụng vào thực
tế bài toán Quản Lí Nhà Hàng
Có thể xây dựng mô hình dữ liệu Quản Lí Nhà Hàng , cài đặt , quản trị , thao tác với cơ sở dữ liệu thông qua hệ quản trị cơ
sở dữ liệu và làm việc theo nhóm
1.2 Mô tả hệ thống.
Mô tả bằng lời hoạt động của nhà hàng
đặt thực phẩm cho nhà cung cấp.Nhà cung cấp đáp ứng nhu cầu nhập thực phẩm của nhà hàng bằng việc chuyển thực phẩm cho nhà hàng kèm theo đơn đặt thực phẩm và kèm theo hóa đơn
thanh toán tiền của các thực phấm Danh mục thực phấm nhập về
sẽ được lưu vào số nhập thực phẩm
xếp bàn cho khách (dựa vào số lượng khách).Nhân viên bàn tiếp nhận yêu cầu của khách rồi viết phiếu yêu cầu món ăn,gửi (kèm theo số bàn) cho bộ phận tiếp tân
Bộ phận tiếp tân dựa vào phiếu yêu cầu món ăn sẽ kiểm tra xem món ăn khách yêu cầu có trong danh mục món ăn hay không nếu không có sẽ thông báo lại cho khách,nếu món ăn khách yêu cầu
có trong danh mục món ăn thì sẽ đưa phiếu yêu cầu cho bộ phận bếp,đồng thời ghi lại số bàn và các món ăn khách yêu cầu vào trong số bán hàng.Mỗi khi khách hàng yêu cầu thêm món ăn thì
sẽ được bồ xung vào số bán hàng
Bộ phận bếp dựa vào phiếu yêu cầu sẽ chế biến các món ăn,đồ uống và xuất cho khách hàng
Khi khách có đề nghị thanh toán,nhân viên bàn sẽ kiểm tra đồ thừa (đồ uống) thông báo chô bộ phận tiếp tân,bộ phận tiếp tân
sẽ dựa vào số phiếu yêu cầu món ăn của khách,viết phiều thanh toán cho khách,nhận tiền và lưu vào số bán hàng
Trang 3Đồi với những khách hàng đặt bàn trước sẽ liên hệ với bộ phận tiếp tân,bộ phận tiếp tân sẽ lưu lại những thông tin đặt hàng của khách:tên khách hàng, giới tính,địa chỉ,điện thoại,số lượng bản đặt,tên mặt hàng,số lượng.(yêu cầu khách đặt cọc tiền trước) -Sau mỗi ngày,mỗi tuần, mỗi tháng và sau một năm bộ phận kế toán sẽ tổng hợp tình hình nhập thực phẩm, tình hình bán hàng, thực phẩm còn trong kho và viết báo cáo gửi cho bộ phận quán lý
1.2.1 Quy Trình Nghiệp Vụ
Quy trình nghiệp vụ gồm :Nhập thực phẩm , bán hàng , báo cáo
1 Sơ đồ tiến trình Nghiệp vụ : Nhập thực phẩm
Trang 4
2 Sơ đồ tiến trình nghiệp vụ : Bán hàng
Tiếp nhận đơn đặt Thực phẩm
Chuyển thực phẩm
Nhập lại thực phẩm
Ghi số thực phẩm
Nhập phiếu nhập thực phẩm
Kiểm tra thực phẩm
Lập đơn đặt thực phẩm
Sổ nhập thực phẩm
Đơn đặt thực phẩm
Phiếu nhập thưc phẩm
Trang 53.Sơ đồ tiến trình nghiệp vụ : Báo Cáo
Thanh
toán tiền
Tiếp
nhận
món ăn
Tiếp nhận yêu cầu
Tiếp nhận yêu cầu thanh
Nhận phiếu yêu cầu món
Có phù hợp không
Ghi sổ thanh toán
Lập phiếu thanh
Chế biến món ăn
Phiếu thanh toán
Sổ thanh toán phiếu yêu cầu món ăn
Trang 61.2.2 Quy tắc nghiệp vụ
-Một số thông tin về khách hàng như: Ten KH, Dia chi và SDT có thể bỏ qua, tùy nhu cầu mục đích muốn bảo mật thông tin của khách
-Khách hàng có thể sửa đổi thông tin, số lượng món trong mục thực đơn món ăn
-Có nhiều loại bàn ăn khác nhau: loại bàn dành cho ít khách và đông khách; loại bàn dành cho khách thường và khách VIP (dịch
vụ ưu đãi khác nhau)
-Mỗi khách hàng sẽ có 1 mã, mã này sẽ được ghi nhớ để phân loại khách hàng: khách mới vào lần đầu và khách quen của nhà hàng Khách đến ăn nhà hàng càng nhiều lần thì sẽ được hưởng khuyến mãi càng lớn
Tiếp nhận
báo cáo
Lập báo cáo
Sổ nhập thực phẩm
Sổ thanh toán
Sổ thực
Trang 7-Một nhân viên có thể đưa nhiều hóa đơn, mỗi hóa đơn chỉ có thể đưa cho một khách hàng
1.4 Đặc tả các chức năng cần xây dựng.
Hệ thống có các chức năng chính: Nhập thực phẩm, bán hàng và báo cáo
1.Nhập thực phẩm
-Lập đơn nhập thực phẩm: khi nhà hàng có nhu cầu nhập thực phẩm thì nhà hàng sẽ lập và gửi đơn nhập thực phẩm đến nhà cung cấp
-Kiểm tra thực phẩm: kế toán tiến hành đối chiếu thực phẩm với đơn nhập thực phẩm xem có phù hợp hay không
-Lập phiếu nhập thực phẩm: bộ phận kế toán sẽ lập phiếu nhập thực phẩm và gửi tiền cho nhà cung cấp
-Ghi sổ nhập thực phẩm: kế toán ghi sổ nhập thực phẩm khi nhà hàng nhập thực phẩm từ nhà cung cấp
2 Bán hàng
-Tiếp nhận yêu cầu món ăn: nhân viên bàn sẽ tiếp nhận yêu cầu món ăn của khác hàng
-Kiểm tra phiếu yêu cầu món ăn: khi nhận phiếu yêu cầu món ăn tiếp tân sẽ kiểm tra xem món ăn đó có phù hợp không
-Xử lí phiếu yêu cầu món ăn: bộ phận bếp sẽ chế biến các món ăn theo phiếu yêu cầu món ăn
-Lập phiếu thanh toán: kế toán viết phiếu thanh toán và thu tiền của khách
-Ghi sổ bán hàng: kế toán ghi sổ bán hàng
3 Báo cáo
-Báo cáo thực phẩm nhập: kế toán sẽ lập báo cáo về tình hình nhập thực phẩm gửi cho bộ phận quản lý
Báo cáo bán hàng: kế toán sẽ lập báo cáo về tình hình bán hàng gửi cho bộ phận quản lý
Trang 8Báo cáo thực phẩm tồn: kế toán sẽ lập báo cáo về tình hình thực phẩm tồn gửi cho bộ phận quản lý
Báo cáo doanh thu: kế toán sẽ lập báo cáo về doanh thu gửi cho
bộ phận quản lý
1.5 Phân chia công việc trong nhóm:
cần xây dựng
liệu, xây dựng mô hình liên kết thực thể, cách chuyển đổi từ
ER sang mô hình quan hệ
vẽ mô hình quan hệ, đặc tả các bảng
Chương 2 PHÂN TÍCH DỮ LIỆU HỆ THỐNG
2.1 Mô tả hệ thống dưới dạng mối quan hệ dữ liệu
* )Các trường dữ liệu trong cơ sở dữ liệu và tập thuộc tính của trường :
1)Khách hàng(Mã KH, Tên KH , Địa chỉ , Điện thoại )
2) Phiếu yêu cầu (Mã phiếu yêu cầu ,Ngày yêu cầu)
3)Bàn ăn (Số bàn , Loại bàn )
4) Hóa đơn (MãHD , NgàyHD)
5)Món ăn (Mã món , Tên món , Đơn giá , Đơn vị tính )
6)Nhóm món ăn (Mã nhóm món ăn ,Tên nhóm món ăn )
7)Nhân viên(Mã NV,Địa chỉ , Tên NV , Chức vụ ,Điện thoại )
8) Phiếu nhập(Mã phiếu nhập ,Ngày nhập)
9)Nhà cung cấp(Mã NCC , Tên NCC , Địa chỉ , Điện thoại )
10) Thực phẩm (Mã thực phẩm , Tên thực phẩm, Đơn giá, Đơn vị tính)
**) Mô tả hệ thống dưới dạng mối quan hệ dữ liệu :
1) Khánh hàng -Phiếu yêu cầu ( 1 – n) : Một khánh hàng đặt được nhiều phiếu yêu cầu , 1 phiếu yêu cầu do 1 khách hàng đặt 2) Phiếu yêu cầu -Bàn ăn (1 - n) : 1 phiếu yêu cầu đặt được nhiều bàn ăn , 1 bàn ăn chỉ nên được đặt bởi 1 bàn ăn
Trang 93) Phiếu yêu cầu -Món ăn (n - n) : 1 phiếu yêu cầu yêu cầu được nhiều món ăn , 1 món ăn có thể được yêu cầu bởi nhiều phiếu yêu cầu
4) Món ăn - Nhóm món ăn (n - 1) : 1 món ăn thuộc 1 nhóm món
ăn , 1 nhóm món ăn có nhiều món ăn
5) Phiếu yêu cầu Hóa đơn(1 - 1): 1 phiếu yêu cầu thanh toán bởi
1 hóa đơn , 1 hóa đơn thanh toán 1 phiếu yêu cầu
6)Hóa đơn - Nhân viên (n – 1 ): 1 hóa đơn được 1 nhân viên thanh toán , 1 nhân viên có thể thanh toán nhiều hóa đơn
7) Nhân viên Phiếu nhập (1 - n): 1 nhân viên viết được nhiều phiếu nhập , 1 phiếu nhập được viết bởi 1 nhân viên
8) Phiếu nhập Nhà cung cấp(n - 1) : 1 phiếu nhập cung cấp bởi
1 nhà cung cấp , 1 nhà cung cấp có nhiều phiếu nhập
9) Phiếu nhập Thực phẩm (n - n) : 1 phiếu nhập được nhiều thực phẩm , 1 thực phẩm có thể nhập được bởi nhiều phiếu nhập
2.2 Xây dựng mô hình liên kết thực thể ( mô tả cụ thể từng mối quan hệ sau đó vẽ mô hình liên kết thực thể)
Khach hang
cau
Ban an
Mon an
Dat
Phieu yeu cau
Co
Thanh
Phieu yeu cau
Hoa don
Nhan vien
Trang 10n 1
Trang 11n 1 n 1 n
1
n
1
n
n
1
n
n
So ban
Loai ban
MaPYC
NgayYC
Ten KH
ia chi
Đ
ien thoai
Đ
Ban an
Yeu
Phieu yeu cau
Co
Khách hàng
So luong Dat
Nhom mon an Mon an
Thanh
toan
Ma nhom mon an Ten nhom mon an
Ma mon Ten mon Don gia Don vi tinh
Co
Hoa don
MaHD
NgayHD
Nha cung cap
Ghi
Phieu nhap
Ma NCC Ten NCC Dia chi Dien thoai
Co
MaPN Ngaynhap Nhan vien
Viet
Ma NV
Dia chi
Ten NV
Chuc vu
Dien thoai
Thuc pham
So luong
Nhap
MaTP TenTP Don vi tinh
Trang 122.3 Cách chuyển đổi từ ER sang mô hình quan hệ ( Mô tả qui tắc chuyển đổi và cách chuyển đổi từng tập thực thể và mối quan hệ)
*) Chuyển mô hình ER sang mô hình quan hệ :
1) Xử lý thuộc tính đa trị :
Tách thuộc tính đa trị ra khỏi kiểu thực thể ban đầu, thêm một kiểu thực thể mới chứa thuộc tính đa trị này, xác định lại mối
liên kết của kiểu thực thể này với kiểu thực thể ban đầu
2) Quy tắc biến đổi :
Một tập thực thể - Một lược đồ quan hệ Mỗi thuộc tính - Một thuộc tính
mới
Quy tắc 1 : Với kiểu liên kết 1: 1
C1 : Chuyển khóa chính của LĐQH này sang làm khóa ngoại của LDDQH kia và ngược lại
C2 : Nhập 2 kiểu thực thể và mối liên kết thành 1 LĐQH , chọn khóa chính cho phù hợp
Quy tắc 2 : Với kiểu liên kết 1 : n
Chuyển khóa chính của LĐQH bên 1 (cha) sang làm khóa
ngoại của LĐQH bên nhiều (con)
Quy tắc 3 : Với kiểu liên kết n : n
Chuyển mối liên kết thành một LĐQH có thuộc tính là thuộc
tính của mối liên kết, thêm các thuộc tính khóa chính của các
LĐQH có liên quan, khóa chính của LĐQH mới này là các
thuộc tính mới thêm vào
Quy tắc 4 : Xử lý tập thực thể yếu
Chuyển thành một quan hệ
o Có cùng tên với thực thể yếu
o Thêm vào thuộc tính khóa của quan hệ liên quan
3 ) Chuyển đổi từng tập thực thể và mối quan hệ thành mô hình quan hệ :
1) Từ mối liên kết giữa “Món ăn” với “Phiếu yêu cầu” tạo thành
1 quan hệ là “Đặt món” có khóa là khóa chính của quan hệ
và khóa bội là khóa chính của “Món ăn” và “Phiếu yêu cầu” 2) Từ mối liên kết giữa “Thực phẩm” với “Phiếu nhập” tạo thành
1 quan hệ là “Nhập thực phẩm” có khóa là khóa chính của quan hệ và khóa bội là khóa chính của “Thực phẩm” và
“Phiếu nhập”
Trang 133) Mối liên kết giữa “Khách hàng” với “Phiếu yêu cầu” : Khóa chính của “Khách hàng” sang làm khóa ngoại của “Phiếu yêu cầu”
4) Mối liên kết giữa “Phiếu yêu cầu” với “Bàn ăn” : Khóa chính của “Phiếu yêu cầu” sang làm khóa ngoại của “Bàn ăn”
5) Mối liên kết giữa “Hoá đơn” với “Phiếu yêu cầu”, “Nhân viên”: Khóa chính của “Phiếu yêu cầu”, “Nhân viên” sang làm khóa ngoại của “Hóa đơn”
6) Mối liên kết giữa “Món ăn và “Nhóm món ăn”: Khóa chính của
“Nhóm món ăn” sang làm khóa ngoại của “Món ăn”
7) Mối liên kết giữa “Phiếu nhập” với “Nhân viên”, “Nhà cung cấp”: Khóa chính của “Nhân viên”, “Nhà cung cấp” sang làm khóa ngoại của “Phiếu nhập”
*) Chi tiết mô hình quan hệ:
1)Khách hàng(Mã KH, Tên KH , Địa chi , Điện thoại )
2) Phiếu yêu cầu (Mã phiếu yêu cầu , Ngày yêu cầu , Mã KH)
3)Bàn ăn (Số bàn , Loại bàn , Mã phiếu yêu cầu)
4) Hóa đơn (MãHD , NgàyHD , Mã phiếu yêu cầu, MãNV)
5)Món ăn (Mã món , Tên món , Đơn giá , Đơn vị tính , Mã nhóm món ăn )
6)Nhóm món ăn (Mã nhóm món ăn ,Tên nhóm món ăn )
7)Nhân viên(Mã NV,Địa chỉ , Tên NV , Chức vụ ,Điện thoại )
8) Phiếu nhập(Mã phiếu nhập ,Ngày nhập , Mã NV , Mã NCC ) 9)Nhà cung cấp(Mã NCC , Tên NCC , Địa chỉ , Điện thoại )
10) Thực phẩm (Mã thực phẩm , Tên thực phẩm , Đơn giá, Đơn vị tính )
11) Đặt món (Mã phiếu yêu cầu , Mã Món , Số lượng )
12) Nhập thực phẩm (Mã phiếu nhập , Mã thực phẩm , Số lượng )
2.4 Phân tích nhu cầu sử dụng thông tin.
- Trong sơ đồ thực thể trên, ta thấy khi chuyển sang mô hình quan
hệ đã hoàn chỉnh và không cần chuẩn hóa thêm nữa
2.5 Vẽ mô hình quan hệ.
- Mô hình quan hệ sau khi chuẩn hóa:
Trang 14MaSoBan varchar(10) LoaiBan nvarchar(10) MaPhieuYeuCau varchar(10) Column Name Data Type Allow Nulls
HoaDon
MaHD varchar(10)
NgayHD date
MaPhieuYeuCau varchar(10)
MaNV varchar(10)
Column Name Data Type Allow Nulls
MaKH varchar(10)
TenKH nvarchar(50)
DiaChi nvarchar(100)
DienThoai varchar(10)
Column Name Data Type Allow Nulls
MonAn
MaMon varchar(10) TenMon nvarchar(40) DonGia decimal(18, 0) DVTinh nvarchar(3) MaNhomMon varchar(10)
Column Name Data Type Allow Nulls
NhaCungCap
MaNCC varchar(10) TenNCC nvarchar(40) DiaChi nvarchar(60) DienThoai varchar(10)
Column Name Data Type Allow Nulls
NhanVien
MaNV varchar(10)
DiaChi nvarchar(50)
TenNV nvarchar(30)
ChucVu nvarchar(30)
DienThoai varchar(11)
Column Name Data Type Allow Nulls
NhapThucPham
MaPhieuNhap varchar(10) MaThucPham varchar(10) SoLuong int Column Name Data Type Allow Nulls
NhomMonAn
MaNhomMon varchar(10) TenNhomMon nvarchar(40) Column Name Data Type Allow Nulls
PhieuNhap
MaPhieuNhap varchar(10) NgayNhap date MaNV varchar(10) MaNCC varchar(10) Column Name Data Type Allow Nulls
MaPhieuYeuCau varchar(10) NgayYeuCau date MaKH varchar(10) Column Name Data Type Allow Nulls
ThucPham
MaThucPham varchar(10)
TenThucPham nvarchar(50)
DonGia decimal(18, 0)
DVTinh nvarchar(3)
Column Name Data Type Allow Nulls
DatMon
MaPhieuYeuCau varchar(10) MaMon varchar(10) SoLuong int Column Name Data Type Allow N
2.6 Đặc tả các bảng.
1 KHACHHANG:
hoa+số
Khóa chính
viết hoa
viết hoa
2 NHANVIEN
dạng
Ràng buộc
Trang 15MaNV nvarchar 10 Chữ
viết hoa
viết hoa
viết hoa
3 NHACUNGCAP
hoa+số
Khóa chính
viết hoa
viết hoa
4 THUCPHAM
Mathucpha
Tenthucpha
viết hoa
5 MONAN
dạng
Ràng buộc
viết hoa
viết hoa
Trang 16n hoa+số
6 NHOMMONAN
Manhommo
n
hoa+số
Khóa chính
Tennhomm
on
viết hoa
7 BANAN
dạng
Ràng buộc
viết hoa Maphieuyeu
cau
hoa+số
8 HOADON
hoa+số
Khóa chính
Maphieuyeu
cau
hoa+số
hoa+số
9 PHIEUYEUCAU
dạng
Ràng buộc
Maphieuyeu
hoa+số
10 DATMON
Trang 17Tên trường Kiểu Cỡ Khuôn
Maphieuyeu
hoa+số
Khóa chính
11 NHAPTHUCPHAM
Maphieunh
Mathucpha
m
hoa+số
Khóa chính
12 PHIEUNHAP
Maphieunh
hoa+số
hoa+số
3.2 Khai thác dữ liệu bằng đại số quan hệ và bằng ngôn ngữ SQL
Phần trình bày của từng thành viên: