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

Bài tập lớn môn cơ sở dữ liệu Cơ sở dữ liệu cho mô hình Thương mại điện tử

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 (313.92 KB, 13 trang )

Học viện công nghệ bưu chính viễn thông

* * *
BÁO CÁO

Môn học: Cơ sở dữ liệu
Đề tài: Cơ sở dữ liệu cho mô hình Thương mại điện tử.
Họ tên: Phạm Ngọc Huy
Lớp: D10CN1
1.Phân tích,xác định yêu cầu .
1.1.Giới thiệu về mô hình thương mại điện tử.
Thương mại điện tử, hay còn gọi là e-commerce, e-comm và EC, là sự mua bán
sản phẩm hay dịch vụ trên các hệ thống điện tử như Internet và các mạng máy tính.
Thương mại điện tử dựa trên một số công nghệ như chuyển tiền điện tử, quản lý
chuỗi dây chuyền cung ứng, tiếp thị Internet, quá trình giao dịch trực tuyến, trao
đổi dữ liệu điện tử (EDI), các hệ thống quản lý hàng tồn kho, và các hệ thống tự
động thu thập dữ liệu. Thương mại điện tử hiện đại thường sử dụng mạng World
Wide Web là một điểm ít nhất phải có trong chu trình giao dịch, mặc dù nó có thể
bao gồm một phạm vi lớn hơn về mặt công nghệ như email, các thiết bị di động
cũng như điện thoại.
Thương mại điện tử thông thường được xem ở các khía cạnh của kinh doanh điện
tử (e-business). Nó cũng bao gồm việc trao đổi dữ liệu tạo điều kiện thuận lợi cho
các nguồn tài chính và các khía cạnh thanh toán của việc giao dịch kinh doanh.
E-commerce có thể được phân chia thành:
• E-tailing (bán lẻ trực tuyến) hoặc "cửa hàng ảo" trên trang web với các danh
mục trực tuyến, đôi khi được gom thành các "trung tâm mua sắm ảo".
• Việc thu thập và sử dụng dữ liệu cá nhân thông qua các địa chỉ liên lạc web
• Trao đổi dữ liệu điện tử (EDI), trao đổi dữ liệu giữa Doanh nghiệp với
Doanh nghiệp
• Email và fax và các sử dụng chúng như là phương tiện cho việc tiếp cận và
thiếp lập mối quan hệ với khách hàng (ví dụ như bản tin - newsletters)


• Việc mua và bán giữa Doanh nghiệp với Doanh nghiệp
• Bảo mật các giao dịch kinh doanh
1.2.Xác định các yêu cầu cho bài toán
Các chức năng nghiệp vụ cần có :
#
Công việc
Loại
công
việc
Thao
tác
Mô tả chi tiết
1
Lưu danh mục loại sản phẩm
Lưu trữ
Thêm,s
ửa,
xóa
Thông tin loại sản phẩm bao gồm :
mã loại sản phẩm,tên loại sản phẩm
2
Lưu thông tin sản phẩm
Lưu trữ
Thêm,s
ửa,
xóa
-Đầu tiên cho biết sản phẩm thuộc
loại nào.
-Với mỗi sản phẩm lưu trữ thêm
các thông tin : mã sản

phẩm,tên,thông số,giá bán,ngày
nhập,nhà sản xuất.
3
Lưu thông tin nhà sản xuất
Lưu trữ
Thêm,s
ửa,
xóa
Thông tin cần lưu trữ và quản lý
nhà sản xuất sản phẩm :mã ,tên,địa
chỉ,email,website của nhà sản xuất.
4
Lưu chi tiết đặt hàng
Lưu trữ
Thêm,s
ửa,
xóa
Lưu thông tin cho biết những sản
phẩm do khách hàng chọn mua
cùng số lượng và tổng tiền.
5
Hiển thị danh sách loại sản phẩm
Kết xuất

Danh sách này liệt kê các loại sản
phẩm,khi chọn một mục trong danh
sách sẽ cho biết các sản phẩm
thuộc loại sản phẩm này.
6
Hiển thị tất cả các sản phẩm


Kết xuất

Hiển thị danh sách tất cả các sản
phẩm một cách tổng quan.
7
Hiển thị thông tin chi tiết sản phẩm
Kết xuất

Hiển thị thông tin của sản phẩm ở
mức chi tiết.
8
Hiển thị thông tin các khách hàng
Kết xuất

Hiển thị thông tin tổng quan về các
khác hàng.
9
Hiển thị thông tin các hóa đơn
Kết xuất

Hiển thị thông tin : mã hóa
đơn,ngày lập hóa đơn,đơn giá.
10
Hiển thị thông tin chi tiết của hóa đơn
Kết xuất

Hiển thị thông tin :
+ Các thông về hóa đơn: mã hóa
đơn,khách hàng ,ngày lập hóa

đơn,đơn giá.
+ Thông tin chi tiết : danh mục sản
phẩm được mua đi kèm số lượng và
giá.
11
Tìm kiếm sản phẩm
Tra cứu

Cho phép tìm kiếm sản phẩm theo
tên,nhà sản xuất,

Qúa trình mua hàng :
- Đầu tiên khách hàng sẽ truy cập vào webside :
+Tại trang chính khách hàng có thể được xem danh sách liệt kê tất cả các mặt hàng
của cửa hàng,xem tất cả các món hàng theo loại hàng nào đó,hoặc xem tất cả các món
hàng được sản xuất bởi một nhà sản xuất nào đó.
+Khách hàng có thể thực hiện tìm kiếm một món hàng thông qua tên món hàng,tìm
kiếm nhà sản xuất . . .
+Khách hàng có thể chọn xem chi tiết một món hàng qua danh sách các món hàng
:Tên đầy đủ,loại,nhà sản xuất,thông số kỹ thuật,giá,số lượng còn.
+Khi đã muốn mua một món hàng,khách hàng có thể chọn món hàng kèm với số
lượng cần lấy vào “giỏ hàng”.Giỏ hàng là một bản chi tiết hóa đơn tạm thời lưu thông tin
về các món hàng khác hàng đã chọn cùng với số lượng và tổng tiền cho mỗi chi tiết
ấy,giỏ hàng có thể được thêm,bớt,chỉnh sửa như : thêm một món hang (bằng cách quay
lại trang chính chọn món hàng và “thêm vào giỏ hàng”),loại đi một món hàng (khi khách
xem giỏ hàng và không còn muốn mua món hàng đó nữa),chỉnh sửa tăng,giảm số lượng
của một mặt hàng (khi khác hàng muốn mua thêm hoặc không một lượng món hàng đó ).
+Khi đã muốn hoàn thành quá trình mua hàng.khách hàng có thể kiểm tra lại giỏ
hàng,xem lại các thông tin về giá cả,số lượng,khi đã ưng ý ,khác hàng có thể chốt lại hóa
đơn và thực hiện mua hàng.Lúc này khách hàng được yêu cầu đăng nhập vào tài khoản

giao dịch để thực hiện chuyển tiền.Ở đây ta giả sử cửa hàng của ta có một hệ thống tài
khoản lưu giữ tiền của khách hàng đã nạp trước đó để thực hiện mua hàng tại cửa
hàng.Tài khoản này bao gồm tên tài khoản,mật khẩu đăng nhập tài khoản,tên chủ tài
khoản,số dư của tài khoản (số tiền còn trong tài khoản),thời điểm tạo tài khoản,thời điểm
thực hiện giao dịch cuối cùng,email,số điện thoại chủ tài khoản.Tiếp tục,khách hàng đăng
nhập thành công sẽ được kiểm tra số dư liệu có đủ để thực hiện giao dịch,nếu đủ khách
hàng sẽ phải điền địa điểm thực hiện vận chuyển hàng,nếu không khách hàng khách hàng
có thể chỉnh lại giỏ hàng hoặc hủy giao dịch.Cuối cùng ,khách hàng đồng ý thực hiện
giao dịch,tiền trong tài khoản khách hàng sẽ được trừ đi với lượng là số tiền của lần giao
dịch và hóa đơn sẽ được lưu lại.Khách hàng chờ hàng được vẫn chuyển và xác nhận việc
đã nhận đầy đủ hàng.
2.Thiết kế ở mức khái niệm.
2.1.Xác định các đối tượng thực thể.
Các thực thể được xác định gồm :
2.1.1.Thực thể 1: LoaiSP ( Loại sản phẩm )
-Thuộc tính :
+MaLoaiSP :đây là thuộc tính khóa dùng để phân biệt các loại sản phẩm với nhau.
+TenLoaiSP:mô tả tên loại sản phẩm.
STT
Tên thuộc tính
Kiểu dữ liệu
1
MaLoaiSP
Int
2
TenLoaiSP
VarChar






2.1.2.Thực thể 2: SanPham (sản phẩm hay mặt hàng):
-Thực thể sản phẩm sẽ có các thuộc tính cơ bản sau :
+TenSP–mô tả tên sản phẩm

LoaiSP

MaLoaiSP
TenLoaiSP
+MaSP–mô tả mã sản phẩm ,xác định duy nhất một sản phẩm trong tập tất cả các
sản phẩm, đây sẽ là khóa chính của thực thể SanPham .
+ GiaBan-mô tả giá bán của sản phẩm
+ ThongSo- Thông số : mô tả thông số kỹ thuật của sản phẩm
+ SoLuong- Số lượng :mô tả số lượng sản phẩm mà cửa hàng còn
+ NgayNhap – mô tả ngày mà sản phẩm được nhập về.
STT
Tên thuộc tính
Kiểu dữ liệu
1
MaSP
Int
2
TenSP
VarChar
3
ThongSo
Text
4
GiaBan

Integer
5
SoLuong
Integer
6
NgayNhap
Date







2.1.3.Thực thể 3: NSX ( Nhà sản xuất )
Các thuộc tính
+ MaNSX (Mã nhà sản xuất) :là thuộc tính khóa dùng để phân biệt các nhà sản xuất
với nhau.
+ TenNSX (Tên nhà sản xuất): mô tả tên nhà sản xuất.
+ DiaChiNSX (Địa chỉ nhà sản xuất) : mô tả địa chỉ của nhà sản xuất.
+ EmailNSX : mô tả địa chỉ thư điện tử của nhà sản xuất.
+ WebsiteNSX : trang chủ của nhà sản xuất.
SanPham
TenSP
ThongSo
GiaBan
SoLuong
MaSP
NgayNhap
STT

Tên thuộc tính
Kiểu dữ liệu
1
MaNSX
Int
2
TenNSX
VarChar
3
DiaChiNSX
Text
4
EmailNSX
VarChar
5
WebsiteNSX
VarChar






2.1.4.Thực thể 4: HoaDon (Hóa đơn) :
Các thuộc tính :
+MaHD : mã hóa đơn,khóa chính của thực thể ,phân biệt các hóa đơn khác nhau.
+ DonGia : đơn giá cho toàn bộ số lượng sản phẩm thuộc chi tiết.Đây là thuộc tính
phái sinh.nó được tính bằng tổng tiền bán của tất cả các sản phẩm (kèm số lượng) có
trong hóa đơn.
+NgayLapHD : mô tả ngày hóa đơn được lập.









NSX
TenNSX
DiaChiNSX
EmailNSX
MaNSX
WebsiteNSX
HoaDon
MaHD
NgayLapHD
DonGia
2.1.5.Thực thể 5: KhachHang (Khách hàng) :
Các thuộc tính :
+MaKH : mã khách hàng ,thuộc tính khóa dùng để phân biệt khách hàng này với khách
hàng khác.
+ TenKH :mô tả tên khách hàng.
+ DiaChiKH :mô tả địa chỉ của khách hàng.
+ SoDienThoai : mô tả số điện thoại của khách hàng.
+ EmailKH : mô tả địa chỉ thư điện tử của khách hàng.










2.2.Thiết kế mô hình thực thể liên kết đầy đủ.

Sau đây là thiết kế mô hình thực thể liên kết đầy đủ của toàn bộ cơ sở dữ liệu mà ta
đang thực hiện :



KhachHang
MaKH
SoDienThoai
TenKH
DiaChiKH
EmailKH

























KhachHang
MaKH

SoDienThoai
TenKH
DiaChiKH
EmailKH
HoaDon
MaHD
NgayLapHD
DonGia
Thuộc
CTHD
SoLuongMua
TongTien
Lập
NgayNhap
SanPham

TenSP
ThongSo
GiaBan
SoLuong
MaSP
NSX
TenNSX
DiaChiNSX
EmailNSX
MaNSX
WebsiteNS
X
Sản
xuất
Chứa
LoaiSP

MaLoaiSP
TenLoaiSP

2.Thiết kế ở mức logic.
2.1. Lược đồ cơ sở dữ liệu quan hệ

MaLoaiSP
TenLoaiSP

MaHD
MaSP
SoLuongMua
TongTien





3.Thiết kế cơ sở dữ liệu mức vật lý.
Lược đồ quan hệ của cơ sở dữ liệu này được thiết kế ở mức vật lý với hệ quản trị
cơ sở dữ liệu MySQL :








MaNSX
TenNSX
DiaChiNSX
WebsiteNSX
EmailNSX
MaSP
MaLoaiSP
MaNSX
TenSP
GiaBan
ThongSo
SoLuong
NgayNhap
MaHD
MaKH

DonGia
NgayLapHD
MaKH
TenKH
DiaChiKH
SoDienThoai
EmailKH



Trên cơ sở dữ liệu của mình,viết 10 câu truy vấn đến cơ sở dữ liệu dưới dạng biểu
thức đại số quan hệ:
Truy vấn 1:Tìm tên của tất cả các sản phẩm có giá bán là 1000:
result =π(
TenSP
)(σ(
GiaBan=1000
)(sanpham))
Truy vấn 2:Tìm tên của tất cả các sản phẩm có số lượng bằng 50:
result =π(
TenSP
)(σ(
SoLuong=50
)(sanpham))
Truy vấn 3:Tìm tên của tất cả các khách hàng có địa chỉ tại Hà Nội:
result =π(
TenKH
)(σ(
DiaChiKH=”Ha Noi”
)(khachhang))

Truy vấn 4:Tìm tên của tất cả các sản phẩm có giá bán là 1000 và số lượng là 50:
result =π(
TenSP
)(σ(
GiaBan=1000 AND SoLuong=50
)(sanpham))
Truy vấn 5:Tìm tên của tất cả các khách hàng có địa chỉ Hà Nội hoặc Hồ Chí
Minh:
result =π(
TenKH
)(σ(
DiaChiKH=”Ha Noi” OR DiaChiKH=”Ho Chi Minh”
)(khachhang))
Truy vấn 6:Tìm mã của tất cả các sản phẩm có mã nơi sản xuất là 1:
result = 
(sanpham.MaSP)
((
MaNSX=1
)

(sanpham  nsx))
Truy vấn 7:Liệt kê tất cả các sản phẩm có ngày nhập là 20-11-2011:
spj ►◄ (σ(
NgayNhap=20-11-2011
)(sanpham))
Truy vấn 8:Liệt kê tất cả các khách hàng có tên là Phạm Ngọc Huy :
spj ►◄ (σ(
TenKH=”
Phạm Ngọc Huy


)(khachhang))
Truy vấn 9: Tìm tất cả mã của khách hàng mà có địa chỉ ở Hà Nội hoặc có
tên là Phạm Ngọc Huy:
[
(MaKH)
(
(DiaChiKH=”Ha Noi”)
(khachhang))]  [
(MaKH)
(
(TenKH=”Pham Ngoc Huy”)
(khachhang))]
Truy vấn 10:Tìm mã tất cả các loại sản phẩm có ngày nhập là 20-10-2011:
result = 
(loaisp.MaLoaiSP)
((
(NgayNhap=20-10-2011)
(loaisp  sanpham ))


4. Chuẩn hóa về dạng 3NF:

Các quan hệ :
LoaiSP( MaLoaiSP , TenLoaiSP )
NSX( MaNSX ,TenNSX , DiaChiNSX , WebsiteNSX , EmailNSX )
SanPham(MaSP , MaLoaiSP ,MaNSX , TenSP, GiaBan , ThongSo , SoLuong ,
NgayNhap )
CTHD(MaHD,MaSP,SoLuongMua,TongTien)
HoaDon(MaHD,MaKH,DonGia,NgayLap)
KhachHang(MaKH ,TenKH,DiaChiKH,SoDienThoai,EmailKH)

Cùng với các tập phụ thuộc hàm của chúng không gây ra vi phạm của dạng chuẩn
3NF (một lược đồ quan hệ R ở dạng 3NF với tập phụ thuộc hàm F nếu không có
thuộc tính không khóa nào phụ thuộc hàm bắc cầu vào một khóa của R) vì vậy
lược đồ quan hệ trên đã ở dạng chuẩn 3NF.
5. 10 câu lệnh SQL:
Truy vấn 1: Liệt kê tất cả các sản phẩm có giá bán là 1000:
SELECT * FROM sanpham WHERE GiaBan=1000;
Truy vấn 2: Liệt kê tất cả các sản phẩm có số lượng bằng 50:
SELECT * FROM sanpham WHERE SoLuong=50;
Truy vấn 3: Liệt kê tất cả các khách hàng có địa chỉ tại Hà Nội:
SELECT * FROM khachhang WHERE DiaChiKH=’Ha Noi’;
Truy vấn 4: Liệt kê tất cả các sản phẩm có giá bán là 1000 và số lượng là 50:
SELECT * FROM sanpham WHERE GiaBan=1000 AND SoLuong=50;
Truy vấn 5: Liệt kê tất cả các khách hàng có địa chỉ Hà Nội hoặc Hồ Chí Minh:
SELECT * FROM khachhang WHERE (DiaChiKH=’Ha Noi’ OR DiaChiKH=’Ho Chi
Minh’) ;
Truy vấn 6:Tìm mã của tất cả các sản phẩm có mã nơi sản xuất là 1:
SELECT sanpham.MaSP FROM sanpham, nsx WHERE MaNSX=1;
Truy vấn 7:Liệt kê tất cả các sản phẩm có ngày nhập là 20-11-2011:
SELECT * FROM sanpham WHERE NgayNhap=20-11-2011;
Truy vấn 8:Liệt kê tất cả các khách hàng có tên là Phạm Ngọc Huy :
SELECT * FROM khachhang WHERE TenKH='Pham Ngoc Huy';
Truy vấn 9: Tìm tất cả mã của khách hàng mà có địa chỉ ở Hà Nội hoặc có
tên là Phạm Ngọc Huy:
SELECT khachhang.MaKH FROM khachhang WHERE DiaChiKh=’Ha Noi’ OR
TenKh=’Pham Ngoc Huy’;
Truy vấn 10:Tìm mã tất cả các loại sản phẩm có ngày nhập là 20-10-2011:
SELECT loaisp.MaLoaiSP FROM sanpham, loaisp WHERE NgayNhap=20-10-
2011;

×