Tải bản đầy đủ (.pdf) (34 trang)

Cơ sở dữ liệu quản lý cửa hàng bán điện thoại

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.02 MB, 34 trang )

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

BÀI TẬP LỚN MÔN
CƠ SỞ DỮ LIỆU
XÂY DỰNG CSDL QUẢN LÝ CỬA HÀNG BÁN ĐIỆN THOẠI


MỤC LỤC
ỨNG DỤNG CỦA HỆ CƠ SỞ DỮ LIỆU .............................................................................. 2

I.

YÊU CẦU VỀ DỮ LIỆU CẦN ĐƯỢC LƯU TRỮ ........................................................... 2

II.
1.

Xác định các thực thể ........................................................................................................... 2

2.

Các qui định ràng buộc........................................................................................................ 2
CÁC THAO TÁC TRÊN CƠ SỞ DỮ LIỆU ...................................................................... 2

III.
1.

Lưu trữ .................................................................................................................................. 2

2.


Tra cứu. ................................................................................................................................. 3

3.

Thống kê. ............................................................................................................................... 3

4.

Báo cáo .................................................................................................................................. 3

5.

Tính toán ............................................................................................................................... 3
LƯỢC ĐỒ QUAN HỆ ER ................................................................................................... 4

IV.

ÁNH XẠ LƯỢC ĐỒ ER SANG MÔ HÌNH QUAN HỆ (15 lược đồ) ................................ 6

V.
VI.

CHUẨN HÓA LƯỢC ĐỒ ................................................................................................... 8

VII.

LƯỢC ĐỒ QUAN HỆ SAU CHUẨN HÓA (17 LƯỢC ĐỒ) ......................................... 11

VIII.


CÀI ĐẶT HỆ THỐNG .................................................................................................. 12

1.

Cài đặt cơ sở dữ liệu ........................................................................................................... 13

2.

Các ứng dụng của cơ sở dữ liệu ........................................................................................ 23

IX.

HƯỚNG DẪN SỬ DỤNG HỆ CƠ SỞ DỮ LIỆU ............................................................ 32

1


I.

ỨNG DỤNG CỦA HỆ CƠ SỞ DỮ LIỆU
Hệ cơ sở dữ liệu quản lý cửa hàng bán điện thoại được xây dựng phục
vụ việc lưu trữ, thống kê, tính toán, tra cứu, báo cáo về hàng hóa, khách
hàng, loại hóa đơn, hóa đơn, các nhà cung cấp, nhân viên của cửa hàng
và các sản phẩm được khách hàng mang tới sửa chữa.

II.

YÊU CẦU VỀ DỮ LIỆU CẦN ĐƯỢC LƯU TRỮ

1. Xác định các thực thể

 Người (NguoiID, hoTen, gioiTinh, ngaySinh, email, cmnd, sdt,
diaChi)
 Nhân viên (NV_NguoiID, chucVu, luong)
 Khách hàng (KH_NguoiID)
 Nhà cung cấp (maNhaCC, tenNhaCC, sdt, diaChi)
 Mặt hàng (maHang, tenHang, giaNhap, giaBan, BH)
 Loại hóa đơn (maLoaiHD, tenLoaiHD)
 Hóa đơn (maHD, maLoaiHD, NV_NguoiID, ngayLap)
 Trạng thái bảo hành (maTrangThai, tenTrangThai)
 Sản phẩm bảo hành (maBH, KH_NguoiID, tenSP, ngayNhan,
ngayTra, maTrangThai, noiDungBH, phiBH)
2. Các qui định ràng buộc
 Mỗi khách hàng có thể mua hàng nhiều lần, có nhiều hóa đơn xuất
 Mỗi hóa đơn xuất chỉ của một khách hàng
 Mỗi nhà cung cấp có thể cung cấp hàng nhiều lần, có nhiều hóa đơn
nhập.
 Mỗi hóa đơn nhập chỉ nhập hàng từ một nhà cung cấp
 Mỗi sản phẩm có thể nằm trên nhiều hóa đơn xuất và hóa đơn nhập
 Mỗi hóa đơn nhập hoặc hóa đơn xuất có thể có nhiều sản phẩm
 Mỗi khách hàng có thể có thể có nhiều sản phẩm bảo hành
 Mỗi sản phẩm bảo hành chỉ có một trạng thái bảo hành
 Một trạng thái bảo hành có thể ở nhiều sản phẩm bảo hành

III.

CÁC THAO TÁC TRÊN CƠ SỞ DỮ LIỆU

1. Lưu trữ
 Danh sách các mặt hàng
 Danh sách khách hàng

 Danh sách nhà cung cấp
2


 Danh sách nhân viên
 Danh sách sản phẩm sửa chữa
 Xuất/nhập hàng hóa
2. Tra cứu.






Thông tin khách hàng
Thông tin nhà cung cấp
Thông tin nhân viên
Thông tin hàng hóa
Thông tin về sản phẩm sửa chữa

3. Thống kê.












Lượng hàng tồn kho
Doanh số bán hàng của từng loại mặt hàng qua từng tháng
Doanh thu từng tháng của từng loại mặt hàng
Tổng doanh thu của cửa hàng qua từng tháng
Danh sách các mặt hàng được sửa chữa được sắp xếp theo thời gian
sắp phải trả khách giảm dần
Nhà cung cấp cung cấp nhiều sản phẩm nhất
Mặt hàng được mua nhiều nhất
Mặt hàng chưa được mua lần nào
Danh sách khách hàng thân thiết
…..

4. Báo cáo
 Doanh thu qua từng tháng
 Số lượng hàng hóa còn lại của mỗi mặt hàng qua từng tháng
5. Tính toán
 Tổng giá trị của mỗi lần mua hàng của một khách hàng = Tổng (Số
lượng * Giá nhập) của mỗi sản phẩm bán
 Tổng giá trị của mỗi lần nhập hàng từ một nhà cung cấp = Tổng (Số
lượng * Giá nhập) của mỗi sản phẩm nhập về
 Tồn kho = Số lượng nhập – Số lượng bán
3


IV.

LƯỢC ĐỒ QUAN HỆ ER


4


Ngày sinh

Địa chỉ

SĐT

Giới tính

CMND
Họ tên
Email
người ID

Người

Ngày nhận

Nội dung BH

Tên sản phẩm

Lương
ngheNghiep

Chức vụ

Ngày trả


Mã BH

d

Nhân viên

Phí BH

Khách hàng

SP bảo hành





Lập
Mã hàng

Tên hàng

Mã trạng
thái

Số lượng
Giá nhập

Số lượng


Trạng thái
bảo hành

Mã HĐ

Ngày lập

Hóa đơn

Mặt hàng

Mua

Tên trạng
thái

Giá bán
bảo hành

Nhà cung cấp

Cung cấp
Thuộc
Mã loại HĐ
Tên loại HĐ

Số lượng
Loại hóa đơn

Mã nhà cc


Tên nhà cc

Địa chỉ CC

sdtCC
5


V.

ÁNH XẠ LƯỢC ĐỒ ER SANG MÔ HÌNH QUAN HỆ
(15 lược đồ)
Người
nguoiID

hoTen
gioiTinh
Người_SĐT
nguoi ID
sdt
Nhân viên
NV-nguoi ID
Khách hàng
KH-nguoi ID

ngaySinh

luong


email

cmnd

diachi

chucVu

ngheNghiep

Hóa đơn
maHD

maLoaiHD

Mặt hàng
maHang
Mua
maHD

tenHang

maHang

NV-nguoi ID

soLuong

ngayLap


giaNhap

KH_nguoiID

giaBan

BH

số lượng

Loại hóa đơn
maLoaiHD tenLoaiHD
Nhà cung cấp
maNhaCC tenNhaCC
Nhà cung cấp _Địa chỉ
maNhaCC diachiCC
Nhà cung cấp_Điện thoại
maNhaCC
sdtCC
Cung cấp
maNhaCC

maHD

maHang

số lượng

Sản phẩm bảo hành
maBH

tenSP ngayNhan ngayTra

KH-nguoi ID

maTrangThai

Trạng thái bảo hành
maTrangThai tenTrangThai

6


Nội dung bảo hành
maBH

KH-nguoi ID

noiDungBH

phiBH

7


VI.

CHUẨN HÓA LƯỢC ĐỒ
1. Người (nguoiID, hoTen, gioiTinh, ngaySinh, email, cmnd, diaChi,
sdt)
F (nguoiID  hoTen, gioiTinh, ngaySinh, email, cmnd, diaChi, sdt;

email  nguoiID, hoTen, gioiTinh, ngaySinh, cmnd, diaChi,
sdt;
cmnd  nguoiID, hoTen, gioiTinh, ngaySinh, email, diaChi,
sdt)
K (nguoiID, email, cmnd)
 1NF
R1(nguoiID, hoTen, gioiTinh, nguoiID  hoTen, gioiTinh,
ngaySinh, email, cmnd,
ngaySinh, email, cmnd,
diaChi)
diaChi
R2(nguoiID, sdt)

nguoiID  sdt

 Đã thỏa mãn chuẩn 2NF, 3NF
Sau chuẩn hóa ta có:
R1(nguoiID, email, cmnd, hoTen, gioiTinh, ngaySinh,
diaChi, email, cmnd)
R2(nguoiID, sdt)
2. Khách hàng (KH-nguoi ID, ngheNghiep)
K (KH-nguoi ID)
 Đã đạt chuẩn 3NF
R (KH-nguoi ID, ngheNghiep)
3. Nhân viên (NV-nguoiID, chucvu, luong)
F (NV-nguoiID  chucVu, luong
chucVu  luong)
K (NV-nguoiID)
 Đã đạt chuẩn 1NF
 2NF

R (NV-nguoiID, chucVu, luong) NV-nguoiID  chucVu,
luong
 3NF
R1 (NV-nguoiID, chucVu)

NV-nguoiID  chucVu

R2 (chucVu, luong)

chucVu  luong
8


4. Hóa đơn (maHD, maLoaiHD, NV_nguoiID, ngayLap)
F (maHDmaLoaiHD, NV_nguoiID, ngayLap)
K (maHD)
 Đã đạt chuẩn 3NF
maHD  maLoaiHD,
NV_nguoiID, ngayLap

R (maHD, maLoaiHD, NV_nguoiID,
ngayLap)

5. Hàng (maHang, tenHang, soLuong, giaNhap, giaBan, baoHanh)
F (maHangtenHang, soLuong, giaNhap, giaBan, baoHanh)
K (maHang)
 Đã đạt chuẩn 3NF
R (maHang, tenHang, soLuong,
giaNhap, giaBan,
baoHanh)


maHangtenHang, soLuong,
giaNhap, giaBan, baoHanh

6. Mua (maHD, maHang, KH_nguoiID, soluong)
F (maHD, maHang, KH_nguoiID  soluong)
K (maHD, maHang, KH_nguoiID)
 Đã đạt chuẩn 3NF
R (maHD, maHang, KH_nguoiID,
soluong)

maHD, maHang, KH_nguoiID 
soluong

7. Loại hóa đơn (maLoaiHD, tenLoaiHD)
F (maLoaiHDtenLoaiHD)
K (maLoaiHD)
 Đã đạt chuẩn 3NF
R (maLoaiHD,
tenLoaiHD)

maLoaiHDtenLoaiHD

8. Nhà cung cấp (maNhaCC, tenNhaCC, diachiCC, sdtCC)
F (maNhaCCtenNhaCC, diachiCC, sdtCC)
K (maNhaCC)
 1NF
R1 (maNhaCC, tenNhaCC,
diachiCC)
R2 (maNhaCC, sdtCC)

R3 (maNhaCC, diachiCC)

maNhaCCtenNhaCC,
diachiCC

9


 Đã đạt chuẩn 3NF
9. Cung cấp (maNhaCC, maHD, maHang, soluong)
F (maNhaCC, maHD, maHang  soluong)
K (maNhaCC, maHD, maHang)
 Đã đạt chuẩn 3NF
R (maNhaCC, maHD, maHang,
soluong)

maNhaCC, maHD, maHang 
soluong

10.Sản phẩm bảo hành (maBH, tenSP, ngayTra, ngayNhan,
noiDungBH, phiBH, KH_nguoiID, maTrangThai)
F (maBH, KH_nguoiIDtenSP, ngayTra, ngayNhan, noiDungBH,
phiBH, maTrangThai;
noiDungBH phiBH)
K (maBH, KH_nguoiID)
 1NF
R1 (maBH, tenSP, ngayTra,
ngayNhan, KH_nguoiID,
maTrangThai)


maBH, KH_nguoiID  tenSP,
ngayTra, ngayNhan,
maTrangThai

R2 (maBH, KH_nguoiID,
noiDungBH, phiBH)

maBH, KH_nguoiID 
noiDungBH
noiDungBH  phiBH

 Đã đạt chuẩn 2NF
 3NF
R1 (maBH, tenSP, ngayTra,
ngayNhan, KH_nguoiID,
maTrangThai)

maBH, KH_nguoiID  tenSP,
ngayTra, ngayNhan, maTrangThai

R2 (maBH, KH_nguoiID,
noiDungBH)

maBH, KH_nguoiID  noiDungBH

R3 (noiDungBH, phiBH)

noiDungBH  phiBH

11.Trạng thái bảo hành (maTrangThai, tenTrangThai)

F (maTrangThai tenTrangThai)
K (maTrangThai)
 Đã đạt chuẩn 3NF
R (maTrangThai, tenTrangThai)

maTrangThai tenTrangThai
10


VII.

LƯỢC ĐỒ QUAN HỆ SAU CHUẨN HÓA (17 LƯỢC ĐỒ)
Người
nguoiID

email

cmnd

Người-SĐT
nguoi ID
Nhân viên
NV-nguoi ID
Chức vụ
chucVu
Khách hàng
KH-nguoi ID

hoTen


ngaySinh

gioiTinh

diaChi

sdt

chucVu

luong

ngheNghiep
11


Hóa đơn
maHD maLoaiHD

NV-nguoi ID

ngayLap

Loại hóa đơn
maLoaiHD tenLoaiHD
Mua
KH-nguoi ID

maHD


maHang

soluong

maHD

maHang

soluong

Cung cấp
maNhaCC

Nhà cung cấp
maNhaCC tenNhaCC
SĐT nhà CC
maNhaCC

sdtcc

Địa chỉ nhà CC
maNhaCC

diachiCC

Mặt hàng
maHang

tenHang


Sản phẩm bảo hành
maSPBH

tenSP

soLuong

ngayNhan

giaNhap

ngayTra

giaBan

maTrangThai

BH

KH-nguoi ID

Trạng thái bảo hành
maTrangThai tenTrangThai
Nội dung bảo hành
maSPBH

KH-nguoi ID

noiDungBH


Phí bảo hành
noiDungBH

VIII.

phiBH

CÀI ĐẶT HỆ THỐNG
12


 Quá trình xây dựng CSDL sử dụng phần mềm Microsoft Access
1. Cài đặt cơ sở dữ liệu
1.1. Bảng NGUOI
CREATE TABLE NGUOI(
NguoiID char(255) NOT NULL PRIMARY KEY,
hoTen char(255),
gioiTinh char(255),
ngaySinh Date,
email char(255) UNIQUE,
cmnd int UNIQUE,
diaChi char(255));

1.2. Bảng NGUOI_SDT
CREATE TABLE NGUOI_SDT
(
NguoiID char(255) ,
SDT int,
CONSTRAINT pk_Personsdt PRIMARY KEY (NguoiID, SDT),
FOREIGN KEY (NguoiID) REFERENCES NGUOI(NguoiID)

);

13


1.3. Bảng KHACHHANG
CREATE TABLE KHACHHANG(
KH_NguoiID char(255) PRIMARY KEY,
FOREIGN KEY (KH_NguoiID) REFERENCES NGUOI(NguoiID)
);

1.4. Bảng CHUCVU
CREATE TABLE CHUCVU(
chucVu char(255) NOT NULL PRIMARY KEY,
luong int
);

14


1.5. Bảng NHANVIEN
CREATE TABLE NHANVIEN(
NV_NguoiID char(255) PRIMARY KEY,
chucVu char(255) NOT NULL,
FOREIGN KEY (NV_NguoiID) REFERENCES NGUOI(NguoiID)
);

1.6. Bảng NHACUNGCAP
CREATE TABLE NHACUNGCAP(
maNhaCC char(255) NOT NULL PRIMARY KEY ,

tenNhaCC char(255) NOT NULL
);

15


1.7. Bảng NHACUNGCAP_DIACHI
CREATE TABLE NHACUNGCAP_DIACHI(
maNhaCC char(255) NOT NULL,
diaChi char(255),
CONSTRAINT pk_ccsdt PRIMARY KEY (maNhaCC, diaChi),
FOREIGN KEY (maNhaCC) REFERENCES NHACUNGCAP(maNhaCC)
);

1.8. Bảng NHACUNGCAP_SDT
CREATE TABLE NHACUNGCAP_SDT(
maNhaCC char(255) NOT NULL,
SDT int,
CONSTRAINT pk_ccdc PRIMARY KEY (maNhaCC, SDT),
FOREIGN KEY (maNhaCC) REFERENCES NHACUNGCAP(maNhaCC)
);

16


1.9. Bảng LOAIHOADON
CREATE TABLE LOAIHOADON(
maLoaiHD char(255) NOT NULL PRIMARY KEY,
tenLoaiHD char(255) NOT NULL UNIQUE
);


1.10. Bảng HOADON
CREATE TABLE HOADON(
maHD char(255) NOT NULL PRIMARY KEY,
maLoaiHD char(255) NOT NULL ,
NV_NguoiID char(255) NOT NULL ,
ngayLap Date NOT NULL,
FOREIGN KEY (maLoaiHD) REFERENCES LOAIHOADON(maLoaiHD),
FOREIGN KEY (NV_NguoiID) REFERENCES NHANVIEN(NV_NguoiID)
);

17


1.11. Bảng MATHANG
CREATE TABLE MATHANG(
maHang char(255) NOT NULL PRIMARY KEY,
tenHang char(255) NOT NULL UNIQUE,
giaNhap int NOT NULL ,
giaBan int NOT NULL,
BH int
);

18


1.12.

Bảng CUNGCAP


CREATE TABLE CUNGCAP(
maNhaCC char(255) NOT NULL,
maHD char(255) NOT NULL,
maHang char(255) NOT NULL,
soLuong int NOT NULL,
CONSTRAINT pk_ccsp PRIMARY KEY (maNhaCC, maHD, maHang),
FOREIGN KEY (maNhaCC) REFERENCES NHACUNGCAP(maNhaCC),
FOREIGN KEY (maHD) REFERENCES HOADON(maHD),
FOREIGN KEY (maHang) REFERENCES MATHANG(maHang)
);

19


1.13. Bảng MUA
CREATE TABLE MUA(
maHD char(255) NOT NULL,
maHang char(255) NOT NULL,
KH_NguoiID char(255) NOT NULL,
soLuong int NOT NULL,
CONSTRAINT pk_muasp PRIMARY KEY (KH_NguoiID, maHD, maHang),
FOREIGN KEY (KH_NguoiID) REFERENCES KHACHHANG(KH_NguoiID),
FOREIGN KEY (maHD) REFERENCES HOADON(maHD),
FOREIGN KEY (maHang) REFERENCES MATHANG(maHang)
);

20


1.14. Bảng PHIBH

CREATE TABLE PHIBH(
noiDungBH char(255) NOT NULL PRIMARY KEY,
phiBH int NOT NULL
);

1.15. Bảng TRANGTHAIBH
CREATE TABLE TRANGTHAIBH(
maTrangThai char(255) NOT NULL PRIMARY KEY,
tenTrangThai char(255) NOT NULL UNIQUE
);

21


1.16. Bảng SANPHAMBH
CREATE TABLE SANPHAMBH(
maBH char(255) NOT NULL,
KH_NguoiID char(255) NOT NULL,
tennSP char(255),
ngayNhan Date NOT NULL,
ngayTra Date,
maTrangThai char(255) NOT NULL,
PRIMARY KEY(maBH, KH_NguoiID),
FOREIGN KEY (KH_NguoiID) REFERENCES KHACHHANG (KH_NguoiID)
);

1.17. Bảng NOIDUNGBH
CREATE TABLE NOIDUNGBH(
maBH char(255) NOT NULL,
KH_NguoiID char(255) NOT NULL,

noiDungBH char(255),
PRIMARY KEY (maBH, KH_NguoiID),
FOREIGN KEY (maBH, KH_NguoiID) REFERENCES SANPHAMBH (maBH,
KH_NguoiID)
);

22


2. Các ứng dụng của cơ sở dữ liệu
1. Liệt kê tên, tuổi, địa chỉ, chức vụ, tiền lương của các nhân viên trong
công ty
SELECT hoTen, gioiTinh, (YEAR(DATE())-YEAR(ngaySinh)) AS Tuoi, diaChi,
NHANVIEN.chucVu, luong
FROM NGUOI, NHANVIEN, CHUCVU
WHERE NguoiID= NV_NguoiID
AND CHUCVU.chucVu=NHANVIEN.chucVu;

2. Cho biết danh sách các đối tác cung cấp hàng
SELECT tenNhaCC, diaChi, SDT
FROM NHACUNGCAP, NHACUNGCAP_DIACHI, NHACUNGCAP_SDT
WHERE NHACUNGCAP.maNhaCC = NHACUNGCAP_DIACHI.maNhaCC
AND NHACUNGCAP.maNhaCC = NHACUNGCAP_SDT.maNhaCC;

23


3. Liệt kê danh sách khách hàng
SELECT hoTen, gioiTinh, ngaySinh, email, cmnd, diaChi
FROM NGUOI, KHACHHANG

WHERE NguoiID=KH_NguoiID;

4. Liệt kê thông tin về khách hàng sửa chữa điện thoại
SELECT hoTen AS KhachHang, tennSP AS MatHang, ngayNhan, ngayTra, tenTrangThai
AS TrangThai, NOIDUNGBH.noiDungBH AS NoiDung, phiBH AS PhiSuaChua
FROM NGUOI, SANPHAMBH, PHIBH, TRANGTHAIBH, NOIDUNGBH
WHERE NguoiID = SANPHAMBH.KH_NguoiID
AND NOIDUNGBH.maBH = SANPHAMBH.maBH
AND NOIDUNGBH.KH_NguoiID =SANPHAMBH.KH_NguoiID
AND PHIBH.noiDungBH=NOIDUNGBH.noiDungBH
AND TRANGTHAIBH.maTrangThai=SANPHAMBH.maTrangThai
ORDER BY ngayTra DESC;

24


×