TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI
KHOA CÔNG NGHỆ THÔNG TIN
---------------o0o---------------
MÔN HỌC: CƠ SỞ DỮ LIỆU
ĐỀ TÀI: QUẢN LÝ KHÁCH HÀNG CHO CỬA HÀNG ĐIỆN THOẠI
Giảng viên hướng dẫn: TS. Nguyễn Quốc Tuấn.
Nhóm thực hiện: Nhóm 02 – Lớp CNTT4 – K62.
Danh sách sinh viên tham gia:
STT
1
2
3
4
Họ và tên
Đặng Qúy Hưng
Bùi Đức Tài Anh
Đào Chí Hiển
Vũ Đỗ Thành Đạt
Hà Nội, tháng 2 năm 2023.
Mã sinh viên
211201933
211213818
211211652
211213435
TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI
KHOA CÔNG NGHỆ THÔNG TIN
---------------o0o---------------
MÔN HỌC: CƠ SỞ DỮ LIỆU
ĐỀ TÀI: QUẢN LÝ KHÁCH HÀNG CHO CỬA HÀNG ĐIỆN THOẠI
Giảng viên hướng dẫn: TS. Nguyễn Quốc Tuấn.
Nhóm thực hiện: Nhóm 02 – Lớp CNTT4 – K62.
Danh sách sinh viên tham gia:
STT
1
2
3
4
Họ và tên
Đặng Qúy Hưng
Bùi Đức Tài Anh
Đào Chí Hiển
Vũ Đỗ Thành Đạt
Hà Nội, tháng 2 năm 2023
2
Mã sinh viên
211201933
211213818
211211652
211213435
LỜI MỞ ĐẦU
Ngày nay cùng với sự phát triển kinh tế nhanh chóng trên tồn thế giới. Nhu cầu mua sắm
của mỗi người trở nên cao hơn. Đặc biệt là những mặt hàng công nghệ như điện thoại. Điều này
khiến cho tốc độ và mật độ các doanh nghiệp, cửa hàng bn bán điện thoại tăng lên nhanh chóng.
Vì thế các các cửa hàng điện thoai khi được mở ra địi hỏi phải có giải pháp hợp lý để quản lý một
cách tốt nhất. Từ đó nhóm đã lựa chọn đề tài xây dựng cơ sở dữ liệu quản lý khách hàng cho cửa
hàng điện thoại.
Trên cơ sở lý thuyết được học trên lớp và thơng qua tìm hiểu về các phần mềm quản lý
khách hàng. Nhóm chúng em đưa ra bản Phân Tích hệ thống về quản lý khách hàng cho cửa hàng
điện thoại.
Nhóm thực hiện chúng em xin trân thành cảm ơn sự giúp đỡ của thầy Nguyễn Quốc
Tuấn đã tận tình hướng dẫn và giúp đỡ chúng em hoàn thành bài tập này .
Chúng em xin chân thành cảm ơn!
3
MỤC LỤC
LỜI MỞ ĐẦU.................................................................................................................................................................3
MỤC LỤC......................................................................................................................................................................4
1.
2.
3.
4.
5.
Giới thiệu về đề tài..............................................................................................................................................5
Chức năng...........................................................................................................................................................5
Phạm vi...............................................................................................................................................................6
Xác định mơ hình thực thể liên kết...................................................................................................................6
2.1.
Các kiểu thực thể.......................................................................................................................................6
2.2.
Mơ hình ER................................................................................................................................................6
Chuyển đổi từ mơ hình thực thể liên kết sang mơ hình quan hệ....................................................................8
3.1.
Cách chuyển đổi.........................................................................................................................................8
3.2.
Chuyển đổi các kiểu thực thể, mối liên kết................................................................................................8
3.3.
Lược đồ CSDL quan hệ...........................................................................................................................10
Xác định các ràng buộc toàn vẹn....................................................................................................................10
4.1.
RBTV miền giá trị...................................................................................................................................10
4.2.
RBTV liên bộ...........................................................................................................................................10
4.3.
RBTV tham chiếu....................................................................................................................................11
4.4.
RBTV liên thuộc tính, liên quan hệ.........................................................................................................11
4.5.
RBTV thuộc tính tổng hợp......................................................................................................................11
4.6.
Bảng tầm ảnh hưởng tổng hợp.................................................................................................................12
Truy vấn SQL...................................................................................................................................................12
5.1.
5.1.1.
Bảng khách hàng.............................................................................................................................12
5.1.2.
Bảng nhân viên................................................................................................................................12
5.1.3.
Bảng hóa đơn..................................................................................................................................12
5.1.4.
Bảng điện thoại...............................................................................................................................13
5.1.5.
Bảng thơng số kĩ thuật....................................................................................................................13
5.1.6.
Bảng chi tiết hóa đơn......................................................................................................................13
5.2.
6.
Cấu trúc chi tiết bảng...............................................................................................................................12
Truy vấn SQL..........................................................................................................................................13
Giải trình góp ý.................................................................................................................................................19
Kết luận.........................................................................................................................................................................20
Tài liệu tham khảo.......................................................................................................................................................20
4
1.
Giới thiệu về đề tài
Chức năng
-
Cung cấp cho khách hàng các dịnh vụ tốt hơn
Nâng cao hiệu quả của trung tâm hỗ trợ khách hàng
Trợ giúp nhân viên bán hàng thực hiện đơn hàng một cách nhanh nhất
Đơn giản hố tiến trình tiếp thị và bán hàng
Phát hiện các khách hàng mới
Tǎng doanh thu từ khách hàng
Phạm vi
2.
2.1.
Cửa hàng điện thoại có quy mơ trung bình hoặc lớn.
Xác định mơ hình thực thể liên kết.
Các kiểu thực thể
- Tên các thực thể: Khách hàng, Hóa đơn, Điện thoại, Nhân viên, Thơng số
kỹ thuật.
-
Các thuộc tính
Khách hàng: Mã khách hàng, tên, ngày sinh, giới tính, địa chỉ.
Hóa đơn: Mã hóa đơn, ngày lập, tổng tiền, hình thức thanh toán.
Điện thoại: Mã điện thoại, tên, số lượng tồn, bảo hành, năm sản xuất, hãng
sản xuất.
Nhân viên: Mã nhân viên, tên, ngày sinh, giới tính, chức vụ.
Thông số kỹ thuật: Màu sắc, bộ nhớ, độ phân giải, CPU, hệ điều
hành, camera, trọng lượng, kích thước.
-
Các thuộc tính khóa
Các thuộc tính khóa gồm có: Mã khách hàng, mã nhân viên, mã hóa
đơn và mã điện thoại.
2.2.
Mơ hình ER.
5
Hình 1. Sơ đồ thực thể liên kết
6
3. Chuyển đổi từ mơ hình thực thể liên kết sang mơ hình quan hệ
3.1.
Cách chuyển đổi
-
-
3.2.
Các thực thể => Các bảng
+ Thực thể:NHANVIEN=>BẢNG NHANVIEN
+ Thực thể:HOADON=>BẢNG HOADON
+ Thực thể:KHACHHANG=>BẢNG KHACHHANG
+ Thực thể:DIENTHOAI=>BẢNG DIENTHOAI
+ Thực thể:THONGSOKYTHUAT=>BẢNG THONGSOKYTHUAT
Các thuộc tính của thực thể => Các thuộc tính/ cột của bảng
Các loại liên kết
+ Nếu là liên kết 1-1: Khóa cả bảng bên 1 bất kỳ trở thành một thuộc tính kết nối (khóa
ngoại) ở bảng bên kia.
+ Nếu là 1-n: Khóa của bảng bên 1 trở thành thuộc tính kết nối (khóa ngoại) ở bảng
bên nhiều.
+ Nếu là n – n: Thì phải thêm một bảng Trung gian, bảng trung gian này sẽ chứa 2
thuộc tính khóa của hai bảng và cả hai thuộc tính khóa này sẽ là khóa chính cho bảng
trung gian, ngồi ra bảng trung gian có thể thêm một số thuộc tính khác của mối liên
kết.
Chuyển đổi các kiểu thực thể, mối liên kết
-
Liên kết 1- n : liên kết giữa nhân viên và hóa đơn.
7
-
Liên kết 1- n: Liên kết giữa khách hàng vs hóa đơn
-
Liên kết n- n : liên kết giữa hóa đơn và điện thoại.
-
Liên kết 1- 1 : liên kết giữa điện thoại và thông số kỹ thuật
8
3.3.
Lược đồ CSDL quan hệ
4. Xác định các ràng buộc toàn vẹn
4.1.
RBTV miền giá trị
RB-1
- Số lượng điện thoại phải là số không âm
- Bối Cảnh: DIENTHOAI
- ∀ tϵDIENTHOAIϵDIENTHOAIDIENTHOAI (tϵDIENTHOAI . SoLuong ≥ 0)
RB-1
Thêm
Xóa
Sửa
DIENTHOAI
+
-
+
4.2.
RBTV liên bộ
RB-2
- Mã khách hàng là duy nhất
- Bối Cảnh: KHACHHANG
- ∀ tϵDIENTHOAI 1, tϵDIENTHOAI 2 ϵDIENTHOAIKHACHHANG(tϵDIENTHOAI 1≠ tϵDIENTHOAI 2=¿tϵDIENTHOAI 1. MaK ≠ tϵDIENTHOAI 2. Mak)
9
RB-2
Thêm
Xóa
Sửa
KHACHHANG
+(MaKH)
-
+(MaKH)
4.3.
-
RBTV tham chiếu
RB-3
Mỗi hóa đơn phải có ít nhất một nhân viên lập
Bối Cảnh: HOADON, NHANVIEN
∀ tϵDIENTHOAIϵDIENTHOAIHOADON (∃ vϵNHANVIENϵDIENTHOAINHANVIEN ( tϵDIENTHOAI . MaNhanVien=vϵNHANVIEN . MaNhanVien ) )
RB-3
Thêm
Xóa
Sửa
HOADON
+(MaNV)
-
+
NHANVIEN
-
+
+
4.4.
RBTV liên thuộc tính, liên quan hệ
RB-4
- Ngày sinh của khách hàng phải trước ngày lập hóa đơn
- Bối Cảnh: KHACHHANG, HOADON
- ∀ tϵDIENTHOAIϵDIENTHOAIHOADON ¿
RB-5
Thêm
Xóa
Sửa
HOADON
+
-
+(MaK,
NgayLap)
KHACHHANG
-
-
+(NgaySinh,
MaK)
4.5.
RBTV thuộc tính tổng hợp
RB-5
10
-
Tổng tiền hóa đơn phải bằng tổng trị giá các chi tiết hóa đơn
Bối Cảnh: HOADON, CHITIET
∀ tϵDIENTHOAIϵDIENTHOAIHOADON ¿ ).
RB-5
Thêm
Xóa
Sửa
HOADON
+(TongTien)
-
+(TongTien)
CHITIET
+
+
+(SoLuongBan,
Dongia)
4.6.
Bảng tầm ảnh hưởng tổng hợp
RB-1
T X S
NHANVIEN
KHACHHANG
HOADON
DIENTHOAI
CHITIET
RB-2
T X S
+
-
RB-3
T X S
- + +
+
+
+ -
-
+
RB-4
T
X
S
RB-5
T
X
S
+
+
+
+
-
+
+
+
+
-
+
5. Truy vấn SQL
5.1. Cấu trúc chi tiết bảng
5.1.1. Bảng khách hàng
Tên trường
Kiểu
Độ
rộng
Khoá
Null
MAKHACHHANG
NvarChar
10
PK
No
HOTEN
Nvarchar
20
GIOITINH
Nvarchar
10
NGAYSINH
Datetime
DIACHI
NVarchar
50
SODIENTHOAI
Nvarchar
15
Ghi chú
No
5.1.2. Bảng nhân viên
Tên trường
Kiểu
Độ rộng
Khoá
11
Null
Ghi chú
MANHANVIEN
NvarChar
10
HOTEN
Nvarchar
20
GIOITINH
Nvarchar
10
NGAYSINH
Datetime
CHUCVU
Nvarchar
PK
No
No
20
5.1.3. Bảng hóa đơn
Tên trường
Kiểu
Độ
rộng
Khố
Null
MAHOADON
NvarChar
10
PK
No
MANHANVIEN
Nvarchar
10
FK
No
MAKHACHHANG
Nvarchar
10
FK
No
NGAYLAP
Datetime
TONGTIEN
INT
HINHTHUCTHANHTOAN
Nvarchar
Ghi chú
20
5.1.4. Bảng điện thoại
Tên trường
Kiểu
Độ rộng
Khố
Null
MADIENTHOAI
NvarChar
10
PK
No
TENDIENTHOAI
Nvarchar
10
INT
10
BAOHANH
NAMSANXUAT
DateTime
HANGSANXUAT
Nvarchar 10
SOLUONGTON
Ghi chú
INT
5.1.5. Bảng thơng số kĩ thuật
Tên trường
Kiểu
Độ rộng
Khố
Null
MADIENTHOAI
NvarChar
10
PK/FK
No
TRONGLUONG
Float
MAUSAC
Nvarchar
50
12
Ghi chú
KICHTHUOC
Nvarchar
CAMERA
50
INT
HEDIEUHANH
Nvarchar
50
DOPHANGIAI
Nvarchar
CPU
Nvarchar
50
BONHO
Nvarchar
50
5.1.6. Bảng chi tiết hóa đơn
Tên trường
Kiểu
Độ rộng
Khố
Null
No
MAHOADON
Nvarchar
10
PK/FK
MADIENTHOAI
Nvarchar
10
PK/FK
DONGIA
Decimal
SOLUONGBAN
5.2.
Ghi chú
INT
Truy vấn SQL
Câu 1: Đưa ra những tên khách hàng có địa chỉ tại Hồ Chí Minh
q1 ← σ_Diachi = 'Ho Chi Minh '(KHACHHANG); qDiachi = 'Ho Chi Minh '(KHACHHANG); q←π_Diachi = 'Ho Chi Minh '(KHACHHANG); qTenKH(q1)
Câu 2: Đưa ra họ tên nhân viên có chức vụ quản lý
π_Diachi = 'Ho Chi Minh '(KHACHHANG); qHoten(σ_Diachi = 'Ho Chi Minh '(KHACHHANG); qChucVu = “QuanLy”(NHANVIEN))
13
Câu 3: Đưa ra tên điện thoại và số lượng đang có ở cửa hàng
π_Diachi = 'Ho Chi Minh '(KHACHHANG); qTenDT, SoluongTon(DIENTHOAI)
Câu 4: Đưa ra các mã các điện thoại chưa từng được bán
π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaDT(DIENTHOAI) – (π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaDT(CHITIET))
Câu 5: Đưa ra thơng tin khách hàng thanh tốn bằng hình thức chuyển khoản
q1 ← π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaKH (σ_Diachi = 'Ho Chi Minh '(KHACHHANG); qHinhThucThanhToan= 'ChuyenKhoan'(HOADON))
q← π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaKH, HoTen, GioiTinh, Ngaysinh, DiaChi, SDT (q1*KHACHHANG)
14
Câu 6: Đưa ra tên khách hàng ở Hà Nội mua hàng ngày 26/3/2023
q1 ← σ_Diachi = 'Ho Chi Minh '(KHACHHANG); qDiachi = 'HaNoi'(KHACHHANG)
q2 ← π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaKH(σ_Diachi = 'Ho Chi Minh '(KHACHHANG); qngayLap = '1/1/2022 '(HOADON))
q← π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaKH, TenK (q1*q2)
Câu 7: Đưa ra các mã khách hàng chưa từng mua hàng từ ngày 8/3/2023
q1 ← σ_Diachi = 'Ho Chi Minh '(KHACHHANG); qNgaylap ≥ “8/3/2023”(HOADON); q2 ← π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaKH (q1);
q3 ← π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaKH (KHACHHANG); q ← q3 – q2
Câu 8: Đưa ra mã khách hàng mua điện thoại Iphone 14 prm với số lượng lớn hơn 2
q1 ← π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaDT(σ_Diachi = 'Ho Chi Minh '(KHACHHANG); qtenDT = 'Iphone 14 prm '(DIENTHOAI))
q2 ← π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaHD (σ_Diachi = 'Ho Chi Minh '(KHACHHANG); qSoluongBan > 2 (CHITIET *q1))
15
q ← π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaKH(HOADON * q2)
Câu 9: Đưa ra danh sách điện thoại và số lượng đã bán
ρTKDT (MaDT ,TenDT , SLban) ¿
(CHITIET ∗DIENTHOAI )
Câu 10: Đưa ra tên điện thoại đã bán có đơn giá cao nhất
Dmax ← F MAX ( DonGia ) (CHITIET )
q1 ← π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaDT(σ_Diachi = 'Ho Chi Minh '(KHACHHANG); qDonGia = Dmax(CHITIET)); q ←
π_Diachi = 'Ho Chi Minh '(KHACHHANG); qTenDT(q1*DIENTHOAI)
Câu 11: Đưa ra mã, tên khách hàng thanh tốn hóa đơn có tổng tiền cao nhất
q1 ← ρ ( MaHD , TongTien ) F ¿ ∑ ( SoluongBan∗Dongia ) ( CHITIET )
16
Tmax ← F_Diachi = 'Ho Chi Minh '(KHACHHANG); qMAX(TongTien)(q1)
q ←π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaKH(σ_Diachi = 'Ho Chi Minh '(KHACHHANG); qTongTien = Tmax(HOADON*q1));
π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaKH, TenKH(q*KHACHHANG)
Câu 12: Đưa ra họ tên, địa chỉ các khách hàng mua điện thoại có bảo hành trên 6
tháng
q1 ← π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaDT(σ_Diachi = 'Ho Chi Minh '(KHACHHANG); qBaoHanh > 6 thang(DIENTHOAI))
q2 ← π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaHD(q1 * CHITIET)
q3← π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaKH(q2 * HOADON)
q ←π_Diachi = 'Ho Chi Minh '(KHACHHANG); qMaKH, Hoten, Diachi (q3 * KHACHHANG)
Câu 13: Tính tổng doanh thu tháng 3/2023
q1 ← (σ_Diachi = 'Ho Chi Minh '(KHACHHANG); qNgaylap ≥“1/3/2023” ∧ σ Ngaylap ≤31/3/2023 (HOADON))
q2 ← ρ ( MaHD , TongTien ) F ¿ ∑ ( SlBan∗Dongia ) ( CHITIET∗q 1 )
ρ( doanhThuThang) ← F ∑ (TongTien) (q 2)
17
Câu 14: Đưa ra tên điện thoại có số lượng bán nhiều nhất
q1 ← ρ( MaDT , TSLB) MaDT_Diachi = 'Ho Chi Minh '(KHACHHANG); qF_Diachi = 'Ho Chi Minh '(KHACHHANG); qSUM(SoluongBan)(CHITIET)
Smax ← F_MAX(TSLB)(q1); q2 ← σ_Diachi = 'Ho Chi Minh '(KHACHHANG); qTSLB = Smax(q1)
q← TenDT, TSLB (q2 * DIENTHOAI)
Câu 15: Đưa danh sách các khách hàng đã mua sản phẩm của hãng sản xuất
"Apple" từ năm 2020 đến nay, và số lượng sản phẩm mỗi khách hàng đã mua.
q1← π MaDT (σ HangSX =' Apple ' ( DIENTHOAI ))
q2 ← ρ( MaHD ,TSLB)MaHD ¿F_Diachi = 'Ho Chi Minh '(KHACHHANG); qCOUNT(MaDT)(CHITIETHOADON*q1)
q3← π M aHD ( σ N gayLap≥ 1 / 1 / 2020 ( HOADON∗q 2 ) )
q3← π MaKH ,TenKH,TSLB(q3*KHACHHANG)
18
6. Giải trình góp ý
-
Góp ý của giảng viên:
+ Xóa thuộc tính tuổi trong thực thể Nhân viên và thực thể Khách hàng.
+ Sửa đổi mối liên kết giữa thực thể Điện thoại và thực thể Hóa đơn từ 1 – N
sang N – N.
19
Kết luận
Trong báo cáo này, chúng ta đã cơ bản xây dựng thành công một cơ sở dữ liệu để quản lý
khách hàng cho cửa hàng điện thoại. Cơ sở dữ liệu bao gồm các thông tin cơ bản của khách hàng
giúp cho việc quản lý và truy xuất thông tin khách hàng trở nên thuận tiện và hiệu quả hơn.
Chúng ta đã thiết kế cơ sở dữ liệu với các bảng tương ứng cho mỗi loại thông tin và áp
dụng các ràng buộc để đảm bảo tính nhất quán và độ tin cậy của dữ liệu. Đánh giá độ hiệu quả của
cơ sở dữ liệu và các ứng dụng liên quan, chúng tôi nhận thấy rằng cơ sở dữ liệu và các ứng dụng đã
giúp cho việc quản lý khách hàng của cửa hàng điện thoại trở nên hiệu quả và tiết kiệm thời gian
hơn. Tuy nhiên, vẫn còn một số hạn chế cần được giải quyết để nâng cao tính ổn định và chất
lượng của hệ thống.
Tài liệu tham khảo
Slide giáo trình cơ sở dữ liệu
/>
20