You are on page 1of 18

Đồ án môn học Hệ Cơ Sở dữ liệu

MỤC LỤC
MỤC LỤC................................................................................................................. 1
DANH MỤC CÁC HÌNH VẼ...................................................................................2
DANH MỤC CÁC BẢNG BIỂU..............................................................................2
CHƯƠNG 1 : MÔ TẢ BÀI TOÁN...........................................................................3
1.1 Terms (Thuật ngữ chính).................................................................................3
1.2 Các quy tắc nghiệp vụ.....................................................................................3
CHƯƠNG 2 : THIẾT KẾ CƠ SỞ DỮ LIỆU.............................................................5
1.1. Các kiểu thực thể........................................................................................5
1.2. Các thuộc tính................................................................................................5
1.3. Lược đồ ER................................................................................................5
CHƯƠNG 3 THỰC THI CƠ SỞ DỮ LIỆU..............................................................7

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

DANH MỤC CÁC HÌNH VẼ


Hình 1.1 Lược đồ ER..............................................................................................10
Hình 1.2 Lược đồ quan hệ.......................................................................................10
Hình 1.3 Database Diagrams...................................................................................11

DANH MỤC CÁC BẢNG BIỂU


Bảng 1.1 Thuật ngữ chính.........................................................................................6
Bảng 1.2 Quy tắc nghiệp vụ....................................................................................14

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

CHƯƠNG 1: MÔ TẢ BÀI TOÁN


1. Giới thiệu bài toán
ZALORA là website mua sắm thời trang hàng hiệu trực tuyến hàng đầu Việt
Nam ( gọi là "Công ty TNHH Bán lẻ và Giao nhận Recess ” ) cung cấp các dịch vụ trực
tuyến cho Nhà Bán Hàng vời nhu cầu giới thiệu và bán sản phẩm của Nhà Bán
Hàng tới Người mua sắm tiềm năng có nhu cầu mua các sản phẩm của Nhà Bán
Hàng , là một thành viên thuộc tập đoàn CENTRAL GROUP VIETNAM.
Được thành lập từ năm 2012 vơí mục đích cung cấp cho khách hàng hơn 20,000 sản
phẩm từ giày,dép, trang phục, phụ kiện đến mỹ phẩm cho cả phụ nữ và nam giới từ
thương hiệu thời trang danh tiếng từ trong và ngoài nước. Việc thanh toán có thể
thực hiện đơn giản bằng hóa đơn, chuyển khoản hay trả qua thẻ ghi nợ và thẻ tín
dụng.  Ngoài Việt Nam Zalora còn có mặt trên rất nhiều các quốc gia khác
như Singapore, Hong Kong, Australia, New Zealand.
Qua quá trình tìm hiểu hệ thống bán hàng thời trang online của zalora nhóm
chúng em có tổng kết được một số thông tin về bài toán quản lý bán hàng như sau:
1.1.Dành cho người mua sắm:
Sàn giao dịch TMĐT ZALORA chỉ hỗ trợ các tính năng trung gian giúp người
mua sắm và Nhà Bán Hàng có thể dễ dàng giao dịch thông qua môi trường internet
mà không trực tiếp tham gia vào quá trình giao dịch.Mỗi khách hàng sẽ đăng ký
một tài khoản mua hàng trên website (Tên Địa chỉ giao hàng, Địa chỉ Email, Số
điện thoại cố định, Số điện thoại di động, Ngày sinh, Giới tính ) .Nhà bán háng sẽ
sử dụng thông tin bạn cung cấp để hỗ trợ quản lý tài khoản khách hàng; xác nhận và
thực hiện các giao dịch tài chính liên quan đến các khoản thanh toán trực tuyến của
Khách hàng .Bên cạnh đó Nhà bán hàng có thể chia sẻ tên và địa chỉ của Khách
Hàng cho dịch vụ chuyển phát nhanh hoặc nhà cung cấp để có thể giao hàng .
Khách hàng có thể tham khảo và lựa chọn áp dụng nếu phù hợp.
*Quy trình mua hàng của khách hàng như sau:
Khi có nhu cầu mua hàng trên www.zalora.vn người mua nên thực hiện theo các
bước sau đây:
- Tìm kiếm, tham khảo thông tin sản phẩm, dịch vụ và các người bán mà người
mua đang quan tâm;
- Tham khảo thông tin giá và chính sách hỗ trợ của bên bán sản phẩm, dịch vụ mà
người mua đang có nhu cầu mua;
- Dựa trên thông tin tham khảo được từ người bán sản phẩm, dịch vụ người mua
tiến hành đặt hàng và cung cấp các thông tin địa chỉ nhận hàng và có liên hệ với
người bán qua thông tin liên hệ đăng tải trong nội dung tin bán hàng hóa để hỏi về
thêm thông tin sản phẩm, dịch vụ;
- Sau khi đã cung cấp thông tin và quyết định mua hàng, người mua có thể quyết
định đặt hàng;
- Người mua lựa chọn cách thức giao dịch;

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

- Người mua nhận sản phẩm, dịch vụ;


- Người mua thắc mắc, khiếu nại người bán (nếu có).
-Hủy đơn hàng(nếu có): Gọi điện thoại trực tiếp, gửi email, hủy đơn hàng trực tuyến
tại Lazora.
*Khi có nhu cầu mua dịch vụ khuyến mại trên www.zalora.vn thành viên nên thực
hiện theo các bước sau đây:
- Tìm kiếm, tham khảo thông tin dịch vụ và các nhà cung cấp dịch vụ mà thành viên
đang quan tâm;
- Tham khảo thông tin giá khi chưa thực hiện khuyến mại và giá đã thực hiện
khuyến mại và chính sách, điều kiện thực hiện khuyến mại của người bán mà thành
viên đang có nhu cầu mua;
- Dựa trên thông tin tham khảo được từ bên người bán đăng tải tại www.zalora.vn,
thành viên tiến hành theo các bước sau:
+ Mua voucher trực tiếp trên website www.zalora.vn click vào nút "Liên hệ" hoặc
"Đặt hàng"; Đăng nhập bằng tài khoản thành viên, facebook, gmail (Điền đầy đủ
thông tin của khách hàng); Chọn hình thức thanh toán; Xác nhận lại đơn hàng; Gửi
đơn đặt hàng;
+ Sau khi nhận được đơn đặt hàng ban quản trị website www.zalora.vn xác nhận lại
đơn hàng với thành viên: Thực hiện việc giao phiếu voucher;
+ Thành viên nhận, sử dụng phiếu voucher.
Thành viên thắc mắc, khiếu nại về chất lượng của sản phẩm, dịch vụ (nếu có).
Khách hàng có thể lựa chọn 2 phương thức thanh toán sau:
*Cách 1: Thanh toán trước online qua thẻ tín dụng (Visa, Master card..) theo trình
tự sau:
Bước 1: Khách hàng đặt hàng;
Bước 2: Khách hàng thanh toán trước;
Bước 3: Nhà Bán Hàng kiểm tra và chuyển hàng;
Bước 4: Khách hàng kiểm tra và nhận hàng;
*Cách 2: Thanh toán sau khi nhận hàng bằng tiền mặt:
Bước 1: Khách hàng đặt hàng;
Bước 2: Nhà Bán Hàng xác thực đơn hàng;
Bước 3: Nhà Bán Hàng xác nhận thông tin Khách hàng (điện thoại, tin nhắn, email);
Bước 4: Nhà Bán Hàng chuyển hàng;
Bước 5: Khách hàng nhận hàng và thanh toán;
Hàng sẽ có tại nhà bạn trong 3-5 ngày làm việc.
1.2.Dành cho Nhà bán hàng

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

Người Bán Hàng sẽ quản lý gian hàng, tuy nhiên trước khi đăng bất kỳ sản
phẩm nào lên gian hàng thì Người Bán Hàng phải gửi qua cho ZALORA một danh
sách Hàng Hóa Nhà Bán Hàng dự định bán trên Trang Web tới địa chỉ
emailsellers@zalora.vn hoặc bất kỳ địa chỉ email nào khác mà ZALORA có thể chỉ
định tùy từng thời điểm. để ZALORA kiểm duyệt và sau đó chính thức đăng lên
website.
Khi Khách Hàng đặt Hàng Hóa trên Trang Web, Sàn giao dịch TMĐT
ZALORA sẽ xử lý các đơn đặt hàng của Khách Hàng và chuyển các đơn hàng đã xử
lí đến Nhà Bán Hàng với các chi tiết có liên quan đến Hàng Hóa đã đặt, bao gồm
mã sản phẩm của Nhà Bán Hàng hoặc mã vạch có liên quan đến Hàng Hoá và các
chi tiết có trong đơn đặt mua hàng của khách hàng thông qua Báo Cáo Hàng Ngày.
Nhà Bán Hàng sẽ chuẩn bị tất cả các đơn hàng của Khách Hàng theo như Báo
Cáo Hàng Ngày đã nhận từ ZALORA của Ngày Giao Dịch trước.
Nhà Vận Chuyển sẽ giao Hàng Hóa đến Khách Hàng (và thu tiền Hàng Hóa trong
trường hợp C.O.D). Tất cả các khoản thanh toán mà Nhà Vận Chuyển thu từ Khách
Hàng sẽ được chuyển khoản cho ZALORA, và ZALORA sẽ chuyển khoản những
khoản thanh toán này cho Nhà Bán Hàng (trừ đi khoản Hoa Hồng và Các Chi Phí
Của Nhà Vận Chuyển).
1.3.Mặt hàng
1. Tên sản phẩm
2. Giá sản phẩm
3. Chi tiết sản phẩm(mã sản phẩm,kích cỡ, màu sắc….)
4. Nhận xét
5. Chiết khấu giảm giá
6. Hình ảnh
7. Chính sách hoàn trả
8. Thông tin vận chuyển…
2. Quy trình nghiệp vụ
Các quy trình nghiệp vụ quản lý website bán hàng trực tuyến bao gồm:
- Quy trình khách hàng đặt hàng dựa trên các thông tin sản phẩm
- Quy trình khách hàng đăng ký tài khoản trên website
- Quy trình giao hàng
- Quy trình thanh toán đơn hàng
- Quy trình tạo hóa đơn
- Quy trình khách hàng đặt hàng khuyến mãi

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

3. Quy tắc nghiệp vụ


1.1 Terms (Thuật ngữ chính)
Tên thuật ngữ Mô tả
EMPLOYEES Mỗi nhân viên có: Employee_Id, Name, Birthday, Phone,Address
SHIPPERS Người giao hàng có: một mã Shipper_Id, Name, Phone
Mỗi khách hàng có: một mã Shopper_Id duy nhất, SName,
SHOPPER
SEmail, SAddress, SCity, SPhone, SDistrict
CATEGORY Mỗi sản phẩm có: CategoryID, CName, CPicture, CDescription
Sản phẩm có: Product_Id duy nhất, Name, UnitPrice,Picture,
PRODUCT
UnitsInStock, ReOrderLevel
Thông tin mỗi hóa đơn bao gồm: OrderID, OrderDate,
ORDER
ShippedDate, Freight, ShipAddress, Status
ORDER DETAIL Thông tin chi tiết hóa đơn gồm : UnitPrice, Quantity, Discount

Thông tin sản phẩm khuyến mãi gồm mã PP_Id duy nhất,
SALEEVENT
BeginDate, EndDate

Thông tin chi tiết sản phẩm khuyến mãi gồm: Discountpercent,
SALEEVENT DETAILS
DiscountPrice

Bảng 1.1 Thuật ngữ chính


1.2 Các quy tắc nghiệp vụ
- Mỗi khách hàng sẽ có nhiều đơn hàng khi đặt hàng và mỗi hóa đơn chỉ
thuộc một khách hàng duy nhất
- Một người giao hàng(shipper) sẽ phải giao nhiều đơn hàng cho khách hàng
và các đơn hàng của khách hàng sẽ được giao bởi một shipper
- Mỗi hóa đơn sẽ được một nhân viên quản lý và nhân viên sẽ quản lý nhiều
hóa đơn cùng lúc
- Chi tiết hóa đơn sẽ thuộc một hóa đơn và sản phẩm nào đó
- Một loại sản phẩm sẽ có một hoặc nhiều sản phẩm .Và sản phẩm đó có thể
có chương trình khuyến mãi

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

CHƯƠNG 2: THIẾT KẾ CƠ SỞ DỮ LIỆU


1. Lược đồ ER
1.1. Các kiểu thực thể
Các kiểu thực thể gồm:
 Employees
 Shippers
 Shopper
 Category
 Product
 Order
 Order detail
 SaleEvent
 SaleEvent details
1.2. Các thuộc tính
1.2.1. Employees

1.2.2. Shippers

1.2.3. Shopper

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

1.2.4. Category

1.2.5. Product

1.2.6. Order

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

1.2.7. Order detail

1.2.8. SaleEvent

1.2.9.SaleEvent details

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

1.3. Lược đồ ER

Hình 1.1 Lược đồ ER


2. Lược đồ quan hệ
2.1. Chuyển đổi lược đồ

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

Hình 1.2 Lược đồ quan hệ


2.2. Chuẩn hóa
- Các bảng đã đạt chuẩn 1NF, 2NF, 3NF.

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

Hình 1.3 Database Diagrams

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

CHƯƠNG 3 THỰC THI CƠ SỞ DỮ LIỆU


1. Tạo cơ sở dữ liệu và các bảng:
- Dựa vào yêu cầu hệ thống, các bảng của CSDL này đã được xây dựng như sau:
Bảng Shopper
a. Trường Shopper_ID là khóa chính và được tạo tự động
b. Các trường sname, semail, saddress, sdistrict không được là null
c. Trường sPhone nên có dạng sau XXXXXXXXX
Bảng Employees
a. Trường Employ_ID là khóa chính và được tạo tự động
b. Các trường name, birthday, phone, address,manager_id không được là null
c. Trường Phone nên có dạng sau XXXXXXXXX
d. Có khóa ngoại là nhà quản lý
Bảng Shipper
a. Trường ShipperID là khóa chính và được tạo tự động
b. Các trường name, phone không được là null
c. Trường Phone nên có dạng sau XXXXXXXXX
Bảng Category
a. Trường CategoryID là khóa chính và được tạo tự động
b. Các trường name, picture, description không được là null
c. Có khóa ngoại là sản phẩm
Bảng Product
a. Trường ProductID là khóa chính và được tạo tự động
b. Các trường name, Catalog_Id, unitprice, unitsInStock, ReorderLevel không
được là null
c. Có khóa ngoại là loại sản phẩm
d. Đơn giá luôn lớn hơn 0
e. Số lượng tồn kho không là số âm
Bảng Order
a. Trường OrderID là khóa chính và được tạo tự động
b. Các trường Shopper_Id, Employee_Id, orderdate, ShippedDate, Freight,
ShipAddress ,status,shipperID không được là null
c. Có khóa ngoại là Shopper_Id, Employee_Id, shipperID
d. Ngày giao hàng phải lớn hơn hay bằng ngày lập hóa đơn
e. Ngày lặp hóa đơn là ngày hiện hành
Bảng Order Details
a. Các trường Order_id,ProductID, Unitprice, quantity, discount không được là
null

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

b. Có khóa ngoại là Order_id, ProductID


c. Số lượng mua lớn hơn 0
d. Chiết khấu không thể là số âm
Bảng SaleEvent
a. Trường PP_ID là khóa chính và được tạo tự động
b. Các trường beginDate,EndDate không được là null
Bảng SaleEvent details
a. Có khóa ngoại là product_ID và PP_ID
2. Quy tắc nghiệp vụ và các ràng buộc trong CSDL
Để thực hiện các quy tắc nghiệp vụ, cần đưa các ràng buộc vào các bảng sau:
Bảng Quy tắc nghiệp vụ Ràng buộc

- Mỗi người mua sắm có 1 mã khách duy nhất Primary key


Shopper - Số điện thoại phải có dạng XXXXXXXXX Check
với X là các chữ số

- Mỗi nhân viên có một mã duy nhất Primary key


- Số điện thoại phải có dạng XXXXXXXXX Check
Employees với X là các chữ số
-Mỗi nhân viên sẽ được quản lý bởi nhà quản

-Mỗi nhà giao hàng(shipper) sẽ có một mã duy Primary key
nhất
Shipper Check
-Số điện thoại phải có dạng XXXXXXXXX
với X là các chữ số

-Mỗi loại sản phẩm có một mã duy nhất Primary key


Category -Mỗi loại sản phẩm thuộc một sản phẩm nào Foreign key
đó

-Mỗi sản phẩm có một mã duy nhất


Primary key
-Mỗi sản phẩm thuộc sẽ có một loại sản phẩm
Foreign key
Product nào đó
Check
- Đơn giá luôn lớn hơn 0
Check
- Số lượng tồn kho không là số âm
Order -Mỗi hóa đơn có một mã duy nhất Primary key
-Mỗi hóa đơn phải thuộc một khách Foreign key
hàng ,nhân viên và người giao hàng

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

- Ngày giao hàng phải lớn hơn hay bằng ngày


Check
lập hóa đơn
-Ngày lặp hóa đơn là ngày hiện hành
Default
-Mỗi hóa đơn có thể mua nhiều sản phẩm khác
Foreign key
Order nhau
Check
Detail -Số lượng mua lớn hơn 0
Check
- Chiết khấu không thể là số âm

-Mỗi sản phẩm khuyến mãi có một mã duy Primary key


SaleEvent
nhất

SaleEvent -Mỗi sản phẩm khuyến mãi sẽ thuộc một mã


Foreign key
Details sản phẩm nào đó

BẢNG 1.2 Quy tắc nghiệp vụ


----------------------------------- TẠO RÀNG BUỘC-----------------------------------

---------------- Tạo ràng buộc cho bảng Shopper

-- Mã là duy nhất

ALTER TABLE [dbo].[Shopper]

ADD CONSTRAINT uni_cusID UNIQUE([ShopperID])

-- SDT có dạng XXXXXXXXX x là số

ALTER TABLE [dbo].[Shopper]

ADD CONSTRAINT ck_phone check ([Phone] like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-


9][0-9][0-9]')

------------------ Tạo ràng buộc cho bảng Employees

-- Mã là duy nhất

ALTER TABLE [dbo].[Employess]

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

ADD CONSTRAINT uni_EmpID UNIQUE([EmployeeID])

-- SDT có dạng XXXXXXXXX x là số

ALTER TABLE [dbo].[Employess]

ADD CONSTRAINT ck_phonee check ([Phone] like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-


9][0-9][0-9]')

---------------- Tạo ràng buộc cho bảng [dbo].[Shipper]

-- Mã là duy nhất

ALTER TABLE [dbo].[Shipper]

ADD CONSTRAINT uni_ShipperID UNIQUE([ShipperID])

-- SDT có dạng XXXXXXXXX x là số

ALTER TABLE [dbo].[Shipper]

ADD CONSTRAINT ck_phoneee check ([Phone] like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9]


[0-9][0-9][0-9]')

---------------- Tạo ràng buộc cho bảng [dbo].[Catagory]

-- Mã là duy nhất

ALTER TABLE [dbo].[Catagory]

ADD CONSTRAINT uni_cataID UNIQUE([CategoryID])

---------------- Tạo ràng buộc cho bảng [dbo].[Product]

-- Mã là duy nhất

ALTER TABLE [dbo].[Product]

ADD CONSTRAINT uni_proID UNIQUE([ProductID])

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

ALTER TABLE [dbo].[Product]

ADD CONSTRAINT ck_unitprice check ([UnitPrice]>0)

ALTER TABLE [dbo].[Product]

ADD CONSTRAINT ck_unitsinstock check ([UnitsInStock]>0)

---------------- Tạo ràng buộc cho bảng [dbo].[Order]

-- Mã là duy nhất

ALTER TABLE [dbo].[Order]

ADD CONSTRAINT uni_orderID UNIQUE([OrderID])

alter table [dbo].[Order]

add constraint def_ngaylapHD default getdate() for [OrderDate]

alter table [dbo].[Order]

add constraint ck_shippeddate check([ShippedDate]>=[OrderDate])

---------------- Tạo ràng buộc cho bảng [dbo].[Order Detail]

ALTER TABLE [dbo].[Order Detail]

ADD CONSTRAINT ck_unitpricee check([UnitPrice]>0)

ALTER TABLE [dbo].[Order Detail]

ADD CONSTRAINT ck_quantity check([Quantity]>0)

Nhóm 18 Lớp DHTH11E


Đồ án môn học Hệ Cơ Sở dữ liệu

---------------- Tạo ràng buộc cho bảng [dbo].[ SaleEvent]

-- Mã là duy nhất

ALTER TABLE [dbo].[SaleEvent ]

ADD CONSTRAINT uni_ppID UNIQUE([PP_ID])

3. Các câu hỏi truy vấn và thao tác CSDL


10 câu hỏi truy vấn và lệnh tương ứng
1. Liệt kê tất cả các sản phẩm của Lazora
2. Liệt kê 3 hóa đơn mới nhất
3. Top 3 sản phẩm bán đắc nhất
4. Thêm danh mục Top Deals. Và 3 sản phẩm mới thuộc danh mục Top
Deals
5. Xóa sản phẩm có mã là 1
6. Đơn hàng chưa xử lý
7. Sản phẩm có số lượng tồn kho thấp hơn định mức tồn kho
8. Tổng doanh số từng tháng
9. Tổng doanh số đợt khuyến mãi
10. Đếm sô hóa đơn bán được mỗi năm

Nhóm 18 Lớp DHTH11E

You might also like