Tải bản đầy đủ (.doc) (19 trang)

Thiết kế cơ sở dữ liệu quản lý cửa hàng bán điện thoại di động

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.24 MB, 19 trang )

MỤC LỤC

1


PHÂN CÔNG KẾ HOẠCH THỰC HIỆN
HỌ VÀ TÊN

THỜI GIAN
THỰC HIỆN

CÔNG VIỆC
Xây dưng mô hình cơ
sở dữ liệu quan hệ,
Chuẩn hóa cơ sở dữ
liệu

17/03/2018 –
22/03/2018

Trần Mạnh Hùng

Phát biểu bài toán,
Xây dụng mô hình
thực thể

01/03/2018 –
06/03/2018

Phạm Quang Huy


Xác định các ràng
buộc của bài toán

06/03/2018 –
13/03/2018

Trần Bá Phúc

Xác định dữ liệu thực
mô tả bài toán, Khai
thái CSDL dưới dạng
các biểu thức đại số
quan hệ

14/03/2018 –
17/03/2018

Nguyễn Văn Bảo

GHI CHÚ

1. Phát biểu bài toán:
Mỗi khách hàng đến mua được lưu trữ thông tin : Mã khách hàng, họ tên, ngày
sinh, số điện thoại, tổng giá trị mua hàng (là tổng giá trị các hóa đơn khác hàng
đã mua). Mỗi khách hàng được phân biệt nhau qua mã khách hàng.
Cửa hàng có các nhân viên thực hiện công việc, thông tin của nhân viên gồm :
Mã nhân viên, tên nhân viên, ngày sinh, điện thoại, hệ số lương, lương. Mỗi
nhân viên được phân biệt nhau qua mã nhân viên. Mỗi nhân viên có thể sử
dụng nhiều số điện thoại.
Mặt hàng của công ty gồm các thông tin : mã mặt hàng, tên mặt hàng, thời gian

bảo hành, giá. Mặt hàng của siêu thị sẽ được cung cấp bởi nhà cung cấp. Mỗi
nhà cung cấp sẽ được phân biệt với nhau bằng mã nhà cung cấp. Nhà cung cấp
2


sẽ có các thông tin gồm: Tên nhà cung cấp, địa chỉ, số điện thoại, sản phẩm
cung cấp. Siêu thị có thể bán nhiều mặt hàng từ nhiều nhà cung cấp.
Khi khách hàng đến mua hàng sẽ có hóa đơn, thông tin của hóa đơn gồm : mã
hóa đơn, mã mặt hàng, tổng giá trị của hóa đơn, ngày lập hóa đơn, tên nhân viên
lập, tên khách hàng đã mua hàng. Trong mỗi hóa đơn sẽ có nhiều mặt hàng khác
nhau và được ghi rõ số lượng mà khách mua trong hóa đơn đó.
2. Xây dụng mô hình thực thể
2.1 Xác định thực thể và thuộc tính
KHÁCH HÀNG : Mã khách hàng, Tên khách hàng, ngày sinh khách hàng, Số
điện thoại khách hàng, Giới tính khách hàng, Tổng giá trị mua
-Mã KH : khóa
-Tổng giá trị mua hàng : Suy dẫn
NHÂN VIÊN: Mã nhân viên, Tên nhân viên, Số điện thoại nhân viên, ngày sinh
nhân viên, Hệ số lương, Lương
-Mã nhân viên: Khóa
-Số điện thoại nhân viên : Đa trị
-Lương : Suy dẫn
MẶT HÀNG: Mã mặt hàng, Tên mặt hàng, Thời gian bảo hành, Giá
-Mã mặt hàng : Khóa
HÓA ĐƠN: Mã hóa đơn, Mã mặt hàng, Tên khách hàng, Tên nhân viên, Tổng
giá trị, Ngày lập
-Mã hóa đơn: Khóa

3



-Tổng giá trị: Suy dẫn
NHÀ CUNG CẤP: Mã nhà cung cấp, Tên nhà cung cấp, Địa chỉ nhà cung cấp,
Số điện thoại nhà cung cấp, Tên sản phẩm cung cấp
-Mã nhà cung cấp : Khóa
2.2 Xác định các liên kết giữa các thực thể
Khách hàng ---- Có ---- Hóa đơn

(1-N)

Nhân viên ---- Lập ---- Hóa đơn

(1-N)

Nhà Cung cấp--- Cung cấp ---- Mặt hàng (1-N)
Mặt hàng ----- Có ----- Hóa đơn (Số lượng) (M-N)

4


2.3 Vẽ được lược đồ ER

5


3. Xây dưng mô hình cơ sở dữ liệu quan hệ
*Áp dụng quy tắc với thực thể mạnh
(1): tblKHACHHANG (sMaKH, sTenKH, dNSKH, sSĐTKH)
(2): tblNHANVIEN (sMaNV, sTenNV, dNSNV, fHSL)
(3): tblHOADON (sMaHD, sMaMH, sTenKH, sTenNV, dNgayLap)

(4): tblMATHANG (sMaMH, sTenMH, iTGBH, fGia)
(5): tblNHACC (sMaNCC, sTenNCC, sĐCNCC, sSĐTNCC)
*Áp dụng quy tắc với thuộc tính đa trị
(6): tblNV_SDT (sMaNV, sSĐTNV)
*Áp dung quy tắc với liên kết nhiều - nhiều
(7): tblMH_HD (sMaHD, sMaMH, iSoLuong)
*Áp dụng quy tắc với liên kết 1-Nhiều (Nhiều-1)
(3)’: tblHOADON (sMaHD, sTenMH, sTenKH, TenNV, dNgayLap, sMaNV)
(3)’’:

tblHOADON

(sMaHD,

sMaMH,

sTenKH,

TenNV,

dNgayLap,

sMaNV,sMaKH )
(4)’: tblMATHANG(sMaMH, sTenMH, iTGBH, fGia, sMaNCC)
=>Vậy cơ sở dữ liệu cuối cùng của bài toán là:
(1): tblKHACHHANG (sMaKH, sTenKH, dNSKH, sSĐTKH)
(2): tblNHANVIEN (sMaNV, sTenNV, dNSNV, fHSL)
(3)’’:

tblHOADON


(sMaHD,

sMaMH,

sMaNV,sMaKH)
6

sTenKH,

TenNV,

dNgayLap,


(4)’: tblMATHANG(sMaMH, sTenMH, iTGBH, fGia, sMaNCC)
(5): tblNHACC (sMaNCC, sTenNCC, sĐCNCC, sSĐTNCC)
(6): tblNV_SDT (sMaNV, sSĐTNV)
(7): tblMH_HD (sMaHD, sMaMH, iSoLuong)
4. Xác định các ràng buộc của bài toán
“Giới tính của khách hàng chỉ nhận giá trị “Nam” hoặc “Nữ”
Bối cảnh: KHACHHANG
Bảng tầm ảnh hưởng:

KHACHHANG

Thêm

Xóa


Sửa

+

-

+(GioiTinh)

Thêm

Xóa

Sửa

+(MaNV)

-

-*(MaNV)

“Mỗi nhân viên có một mã duy nhất”
Bối cảnh: NHANVIEN
Bảng tầm ảnh hưởng:

NHANVIEN

“Mỗi khách hàng có một mã duy nhất”
Bối cảnh: KHACHHANG
Bảng tầm ảnh hưởng:


7


KHACHHANG

Thêm

Xóa

Sửa

+(MaKH)

-

-*(MaKH)

Thêm

Xóa

Sửa

+(MaHD)

-

+*(MaHD)

“Mỗi hóa đơn chỉ có một mã duy nhất”

Bối cảnh: HOADON
Bảng tầm ảnh hưởng:

HOADON

“Lương của nhân viên chỉ có tăng chứ không có giảm”
Bối cảnh: NHANVIEN
Bảng tầm ảnh hưởng:

NHANVIEN

Thêm

Xóa

Sửa

-

-

+(Luong)

5. Chuẩn hóa cơ sở dữ liệu
(1): KHACHHANG (MaKH, TenKH, NSKH, SĐTKH)
F= { MaKH-> TenKH, NSKH, SĐTKH }
(2): NHANVIEN (MaNV, TenNV, NSNV, HSL)
F= { MaNV-> TenNV, NSNV}
(3): HOADON (MaHD, MaNV, MaKH, MaMH, NgayLap)
F= { MaHD-> MaNV, MaKH, MaMH, NgayLap }


8


(3.1): NHANVIEN_HD (MaNV, TenNV)
F= { MaNV-> TenNV }
(3.2): KHACHHANG_HD(MaKH, TenKH)
F= { MaMH-> TenKH}
(4):MATHANG(MaMH, TenMH, TGBH, Gia, MaNCC)
F= { MaMH-> TenMH, TGBH, Gia, MaNCC }
(5): NHACC (MaNCC, TenNCC, ĐCNCC, SĐTNCC)
F= { MaNCC-> TenNCC, ĐCNCC, SĐTNCC }
(6): NV_SĐT(MaNV, SĐTNV)
F= { MaNV-> SDTNV }
(7): MH_HD (MaHD, MaMH, SoLuong)
F= { MaHD, MaMH-> SoLuong }

9


6. Xác định dữ liệu thực mô tả bài toán

10


11


12



7. Khai thái CSDL dưới dạng các biểu thức đại số quan hệ
*Khai thác từ 1 bảng
- Tìm danh sách tên các nhân viên bán hàng.

πTenNV (NHANVIEN)

13


- Tìm tên mặt hàng, mã mặt hàng có giá nhỏ hơn 20 triệu

πTenMH, MaMH(Ϭgia<20000000)(MATHANG)

- Cho biết mã các nhà cung cấp, tên các nhà cung cấp, số điện thoại các nhà
cung cấp có địa chỉ ở Japan

πMaNCC, TenNCC,SDTNCC (ϬDCNCC= “Japan”)(NHACC)

-Cho biết tên mặt hàng, giá có thời gian bảo hành 24 tháng

πTenMH, Gia(Ϭ

TGBH=24

)(MATHANG)
14


-Cho biết tên khách hàng, ngày sinh có số điện thoại 01663223501


πTenKH, NSKH, SĐTKH(Ϭ

SDT=01663223501

)(KHACHHANG)

*Khai thác dữ liệu từ 2 bảng:
-Tìm tên của khách hàng, số điện thoại khách hàng mua Iphone X:

πTenKH, SĐTKH(Ϭ

TenMH=”Iphone X”

)(KHACHHANG*HOADON*MATHANG)

-Tìm tên nhà cung cấp, địa chỉ nhà cung cấp, số điện thoại sản phẩm có thời
gian bảo hành 24 tháng

πTen NCC, ĐCNCC, SĐTNCC(Ϭ

TGBH=”24”

)(NCC*MATHANG)

-Tìm tên nhân viên, mã nhân viên, ngày sinh nhân viên lập hóa đơn cho sản
phẩm Lumia 990

πTenNV, MaNV, NSNV(Ϭ


TenMH=”Lumia 990”

)(NHANVIEN*HOADON*MATHANG)

15


-Tìm tên khách hàng, số điện thoại khách hàng mua điện thoại của nhà cung cấp
Samsung

πTenKH, SĐTKH(Ϭ

TenNCC=”Samsung”

)(KHACHHANG*HOADON*NCC*MATHANG)

-Tìm tên nhà cung cấp, địa chỉ, số điện thoại nhà cung cấp sản phẩm lớn hơn
20000000đ

πTenNCC, ĐCNCC, SĐTNCC(Ϭ

Gia>2000000đ

)(NCC*MATHANG)

*Tính toán dữ liệu từ một bảng
-Đếm số khách hàng đã mua hàng tại của hàng
MaHĐ




COUNT(MAKH)

(HOADON)

-Đếm số nhân viên làm việc tại siêu thị
MaNV



COUNT(MANV)

(NHANVIEN)

16


-Tính tuổi nhân viên tại cửa hàng tại cửa hàng

TenNV, SĐTNV, NSNV, 2018-year(NSNV)(NHANVIEN)

-Đếm số lượng mặt hàng đã bán
MaMH



COUNT(SOLUONG)

(MATHANG_HD)


-Đếm số nhà cung cấp đã cung cấp mặt hàng cho công ty
MaNCC



COUNT(MANCC)

(NCC)

*Tính toán dữ liệu từ 2 bảng
-Cho biết HSL lớn nhất của nhân viên bán Iphone X.
Quan hệ: HOADON,NHANVIEN.
Thuộc tính: MaHD.



MAX(HSL)

(

Ϭ

TenMH

= “Iphone X”) (HOADON*NHANVIEN)

17


-Cho biết số hóa đơn mỗi nhân viên ghi

Quan hệ: NHANVIEN, HOADON.
Thuộc tính: MaNV, MaHĐ.
MaNV



COUNT(MaHĐ)

(HOADON*NHANVIEN)

-Cho biết số hóa đơn bán được của mỗi sản phẩm
Quan hệ: NHANVIEN, MATHANG.
Thuộc tính: TenMH, MaHĐ.
TenMH



COUNT(MaHĐ)

(HOADON*MATHANG)

-Cho biết số mặt hàng hãng Apple cung cấp
Quan hệ: MATHANG, NCC

18


Thuộc tính: TenNCC, MaMH.
(


Ϭ

TenNCC

= “Apple”)



COUNT(MaMH)

(NCC*MATHANG)

-Cho biết số lần mua hàng của khách hàng Nguyễn Văn Bảo
Quan hệ: HPADON, KHACHHANG
Thuộc tính: TenKH, MaHĐ.
(

Ϭ

TenKH

= “Nguyễn Văn Bảo”)



COUNT(MaHĐ)

19

(HOADON*KHACHHANG)




×