ĐỒ ÁN MÔN ORACLE XÂY DỰNG WEBSITE BÁN HÀNG ĐIỆN THOẠI DI ĐỘNG Mục lục CHƯƠNG 1: TỔNG QUAN 1 1.1 Giới thiệu 1 1.2 Bảng phân công nhiệm vụ 2 CHƯƠNG 2: PHÂN TÍCH HỆ THỐNG 3 2.1 Xác định các loại thực thể 3 2.1.1 Loại thực thể cơ bản 3 2.1.2 Loại thực thể đối tượng ngoài 3 2.1.3 Loại thực thể nghiệp vụ 4 2.2 Mô hình thực thể kết hợp (ERD) 5 2.3 Mô hình ERD biểu diễn bằng Case Studio 5 2.4 Mô hình quan hệ 5 2.5 Xác định các ràng buộc toàn vẹn 6 2.5.1 RBTV trên 1 loại quan hệ 6 2.5.2 RBTV trên nhiều loại quan hệ 8 CHƯƠNG 3: THIẾT KẾ 9 3.1 Tạo cơ sở dữ liệu 9 3.2 Tạo các bảng và các RBTV 9 3.3 Thực thi các chức năng cơ bản 13 3.3.1 View 13 3.3.2 Procedure 13 3.3.3 Các Function 15 CHƯƠNG 4: ỨNG DỤNG 16 4.1 Công nghệ sử dụng: 16 4.2 Chức năng và giao diện của website: 16 4.2.1 Chức năng: 16 4.2.2 Giao diện của website: 17 4.2.3 Kết quả đạt được: 27 CHƯƠNG 1: TỔNG QUAN 1.1 Giới thiệu Trong thời đại công nghiệp hóa, hiện đại hóa như hiện nay. Internet ngày càng trở thành một phần không thể thiếu trong đời sống con người. Vì vậy đã có nhiều doanh nghiệp, công ty đã sữ dụng thương mại diện tử để phát triển phạm vi kinh doanh, thu hút thêm nhiều khách hàng ở mọi lứa tuổi, mọi tầng lớp trong xã hội. Cùng với sự phát triển của khoa học và công nghệ, đặc biệt là sự bùng nổ của Internet và sự không ngừng phát triển của nền kinh tế hiện nay thì mọi công việc kinh doanh đòi hỏi phải nhanh chóng và việc mở rộng phạm vi kinh doanh là nhu cầu thiết yếu. Ngày nay, thông qua diện thoại, Internet khách hàng có thể ngồi tại nhà và lướt qua những trang web để xem, đặt hàng là có thể được phục vụ đến tận nhà. Một Website bán hàng giúp cho việc giao dịch giữa khách hàng và doanh nghiệp trở nên tiện lợi hơn. Vì khách hàng tuy ở nhà nhưng vẫn thấy được các sản phẩm cũng như các tính năng của sản phẩm mà không phải đến tận cửa hàng. Khách hàng cũng có thể đặt mua hàng với mọi số lượng một cách thuận tiện với nhiều phương thức thanh toán hiệu quả, với các dịch vụ tư vấn hay dịch vụ hậu mãi sau bán hàng rất thân thiện. Ngoài ra Website bán hàng còn hỗ trợ các loại công ty dù là lớn, vừa hay nhỏ có thể tiết kiệm chi phí kinh doanh của công ty mình mà vẫn phát triển được kinh doanh và thu hút nhiều khách hàng. Giúp cho công ty hiểu được khách hàng hơn và theo dõi sát khách hàng hơn, điều này vừa tiện cho việc chăm sóc khách hàng, giảm lượng mất mát khách hàng hiện có hay khách hàng tiềm năng trong tương lai. Công ty có thể dễ dàng quảng bá hình ảnh, thống kê thị hiếu khách hàng... mà không tốn nhiều thời gian, tiền bạc để mở các cuộc khảo sát đến từng người tiêu dùng. Xuất phát từ những lý do trên nên em chọn đề tài “Xây dựng website bán hàng điện thoại di động” làm đồ án môn học Oracle.
Trang 1KHOA CÔNG NGHỆ THÔNG TIN
ĐỒ ÁN MÔN ORACLE
ĐỀ TÀI: XÂY DỰNG WEBSITE BÁN HÀNG
ĐIỆN THOẠI DI ĐỘNG
Giảng viên hướng dẫn: ThS Võ Hoàng Khang
Sinh viên thực hiện: Lê Thị Thu Ngọc 1515061038
Nguyễn Minh Sơn 1515061059
TP Hồ Chí Minh, tháng 8 năm 2017
Trang 2Em xin chân thành cảm ơn Thầy Võ Hoàng Khang đã tận tình hướng dẫn, chỉbảo chúng em trong suốt quá trình thực hiện báo cáo đồ án môn học.
Chân thành cảm ơn Quý Thầy Cô Khoa Công Nghệ Thông Tin, trường Đại HọcCông Nghệ TP Hồ Chí Minh, về những bài giảng trong suốt khóa học, về những kiếnthức nền tảng cũng như những kiến thức về chuyên ngành đã giúp cho chúng em hoànthành tốt đồ án
Trong phạm vi khả năng cho phép, nhóm em đã rất cố gắng để hoàn thành đề tàimột cách tốt nhất Song, chắc chắn sẽ không tránh khỏi những thiếu sót Em kínhmong nhận được sự cảm thông và những ý kiến đóng góp của thầy và các bạn
Chúng em xin chân thành cảm ơn!
Sinh viên thực hiện
Lê Thị Thu NgọcNguyễn Minh Sơn
Trang 3
Trang 4
CHƯƠNG 1: TỔNG QUAN 1
1.1 Giới thiệu 1
1.2 Bảng phân công nhiệm vụ 2
CHƯƠNG 2: PHÂN TÍCH HỆ THỐNG 3
2.1 Xác định các loại thực thể 3
2.1.1 Loại thực thể cơ bản 3
2.1.2 Loại thực thể đối tượng ngoài 3
2.1.3 Loại thực thể nghiệp vụ 4
2.2 Mô hình thực thể kết hợp (ERD) 5
2.3 Mô hình ERD biểu diễn bằng Case Studio 5
2.4 Mô hình quan hệ 5
2.5 Xác định các ràng buộc toàn vẹn 6
2.5.1 RBTV trên 1 loại quan hệ 6
2.5.2 RBTV trên nhiều loại quan hệ 8
CHƯƠNG 3: THIẾT KẾ 9
3.1 Tạo cơ sở dữ liệu 9
3.2 Tạo các bảng và các RBTV 9
3.3 Thực thi các chức năng cơ bản 13
3.3.1 View 13
3.3.2 Procedure 13
3.3.3 Các Function 15
CHƯƠNG 4: ỨNG DỤNG 16
4.1 Công nghệ sử dụng: 16
4.2 Chức năng và giao diện của website: 16
Trang 54.2.2 Giao diện của website: 17 4.2.3 Kết quả đạt được: 27
Trang 6CHƯƠNG 1: TỔNG QUAN 1.1 Giới thiệu
Trong thời đại công nghiệp hóa, hiện đại hóa như hiện nay Internet ngày càngtrở thành một phần không thể thiếu trong đời sống con người Vì vậy đã có nhiềudoanh nghiệp, công ty đã sữ dụng thương mại diện tử để phát triển phạm vi kinhdoanh, thu hút thêm nhiều khách hàng ở mọi lứa tuổi, mọi tầng lớp trong xã hội
Cùng với sự phát triển của khoa học và công nghệ, đặc biệt là sự bùng nổ củaInternet và sự không ngừng phát triển của nền kinh tế hiện nay thì mọi công việc kinhdoanh đòi hỏi phải nhanh chóng và việc mở rộng phạm vi kinh doanh là nhu cầu thiếtyếu Ngày nay, thông qua diện thoại, Internet khách hàng có thể ngồi tại nhà và lướtqua những trang web để xem, đặt hàng là có thể được phục vụ đến tận nhà MộtWebsite bán hàng giúp cho việc giao dịch giữa khách hàng và doanh nghiệp trở nêntiện lợi hơn Vì khách hàng tuy ở nhà nhưng vẫn thấy được các sản phẩm cũng như cáctính năng của sản phẩm mà không phải đến tận cửa hàng Khách hàng cũng có thể đặtmua hàng với mọi số lượng một cách thuận tiện với nhiều phương thức thanh toánhiệu quả, với các dịch vụ tư vấn hay dịch vụ hậu mãi sau bán hàng rất thân thiện
Ngoài ra Website bán hàng còn hỗ trợ các loại công ty dù là lớn, vừa hay nhỏ cóthể tiết kiệm chi phí kinh doanh của công ty mình mà vẫn phát triển được kinh doanh
và thu hút nhiều khách hàng Giúp cho công ty hiểu được khách hàng hơn và theo dõisát khách hàng hơn, điều này vừa tiện cho việc chăm sóc khách hàng, giảm lượng mấtmát khách hàng hiện có hay khách hàng tiềm năng trong tương lai Công ty có thể dễdàng quảng bá hình ảnh, thống kê thị hiếu khách hàng mà không tốn nhiều thời gian,tiền bạc để mở các cuộc khảo sát đến từng người tiêu dùng
Xuất phát từ những lý do trên nên em chọn đề tài “Xây dựng website bán hàngđiện thoại di động” làm đồ án môn học Oracle
Trang 71.2 Bảng phân công nhiệm vụ
ST
1 Lê Thị Thu Ngọc 1515061038 Thiết kế giao diện, làm báo cáo, code chức năng, viết câu lệnh SQL
2 Nguyễn Minh Sơn 1515061059 Làm báo cáo, code chức năng, viết câu lệnh SQL
Trang 8CHƯƠNG 2: PHÂN TÍCH HỆ THỐNG 2.1 Xác định các loại thực thể
2.1.1 Loại thực thể cơ bản
PRODUCT (PRODUCT_ID, PRODUCT_NAME, PRODUCT_IMAGE,
PRODUCT_PRICE, PRODUCT_DESCRIPTION)
Diễn giải: Mỗi sản phẩm có một mã sản phẩm (PRODUCT_ID) duy nhất để
phân biệt với các sản phẩm khác Mỗi sản phẩm còn được xác định bởi tên sảnphẩm (PRODUCT_NAME), giá bán (PRODUCT_PRICE), mô tả thông tin về sảnphẩm (PRODUCT_DESCRIPTION) và hình ảnh đại diện (PRODUCT_IMAGE)
Tên thuộc tính Kiểu dữ liệu Mô tả Ghi chú
PRODUCT_NAME NVarchar2(50) Tên sản phẩm not null
PRODUCT_DESCRIPTIO
Mô tả, thông tin vềsản phẩm
PRODUCT_IMAGE Varchar2(50) Hình ảnh đại diện not null
CATEGORY (CATEGORY_ID, CATEGORY_NAME).
Diễn giải: Mỗi loại sản phẩm có một mã loại sản phẩm (CATEGORY_ID) duy
nhất để phân biệt với các loại sản phẩm khác Mỗi loại sản phẩm còn được xácđịnh bởi tên loại sản phẩm (CATEGORY_NAME)
Tên thuộc tính Kiểu dữ liệu Mô tả Ghi chú
CATEGORY_NAME NVarchar2(50) Tên loại sản phẩm not null
2.1.2 Loại thực thể đối tượng ngoài
ADMIN (ADMIN_ID, PASSWORD, NAME ).
Diễn giải: Mỗi tài khoản quản trị có một tên truy cập (ADMIN_ID) duy nhất để
phân biệt với các tài khoản quản trị khác Mỗi tài khoản quản trị còn được xác địnhbởi mật khẩu (PASSWORD) và họ tên người quản trị(NAME)
Trang 9Tên thuộc tính Kiểu dữ liệu Mô tả Ghi chú
NAME NVarchar2(50) Họ tên người quản trị not null
USERS (USER_ID, USER_FULLNAME, USER_EMAIL, USER_PASS).
Diễn giải: Mỗi tài khoản có một mã tài khoản (USER_ID) duy nhất để phân
biệt với các tài khoản khác Mỗi tài khoản còn được xác định bởi tên chủ tài khoản(USER_FULLNAME), địa chỉ email (USER_EMAIL), mật khẩu (USER_PASS)
Tên thuộc tính Kiểu dữ liệu Mô tả Ghi chú
USER_FULLNAME NVarchar2(50) Họ tên chủ tài khoản not null
USER_EMAIL Varchar2(30) Địa chỉ email not null
2.1.3 Loại thực thể nghiệp vụ
BILL (BILL_ID, TOTAL, PAYMENT, ADDRESS, DATES).
Diễn giải: Mỗi đơn đặt hàng có một mã đơn đặt hàng (BILL_ID) duy nhất để
phân biệt với các đơn đặt hàng khác Mỗi đơn đặt hàng còn được xác định bởi tổngtrị giá của đơn hàng (TOTAL), hình thức thanh toán (PAYMENT), địa chỉ kháchhàng muốn nhận hàng (ADDRESS) và ngày xuất hóa đơn (DATES)
Tên thuộc tính Kiểu dữ liệu Mô tả Ghi chú
PAYMENT NVarchar2(50) Hình thức thanh toán not nullADDRESS NVarchar2(50) Địa chỉ khách hàng muốn nhận hàng not null
Trang 102.2 Mô hình thực thể kết hợp (ERD)
2.3 Mô hình ERD biểu diễn bằng Case Studio
2.4 Mô hình quan hệ
PRODUCT (PRODUCT_ID, PRODUCT_NAME, PRODUCT_IMAGE,
PRODUCT_PRICE, PRODUCT_DESCRIPTION, CATEGORY_ID)
CATEGORY (CATEGORY_ID, CATEGORY_NAME).
BILL (BILL_ID, USER_ID, TOTAL, PAYMENT, ADDRESS, DATE).
BILL_DETAIL (BILL_ID, PRODUCT_ID, PRICE, QUANTITY)
USERS (USER_ID, USER_FULLNAME, USER_EMAIL, USER_PASS) ADMIN (ADMIN_ID, PASSWORD, NAME).
CATEGORY
USERSADMIN
Trang 112.5 Xác định các ràng buộc toàn vẹn
2.5.1 RBTV trên 1 loại quan hệ
2.5.1.1 RBTV liên quan đến miền giá trị
BILL (BILL_ID, USER_ID, TOTAL, PAYMENT, ADDRESS, DATE).
R1: TOTAL phải hớn hơn 0
Nội dung: ∀ g ∈ BILL, g.TOTAL > 0.
Bảng tầm ảnh hưởng:
BILL_DETAIL (BILL_ID, PRODUCT_ID, PRICE, QUANTITY).
R2: PRICE và QUANTITY phải hớn hơn 0
Nội dung: ∀ g ∈ BILL_DETAIL, g PRICE > 0 và QUANTITY>0.
Bảng tầm ảnh hưởng:
PRODUCT (PRODUCT_ID, PRODUCT_NAME, PRODUCT_IMAGE,
PRODUCT_PRICE, PRODUCT_DESCRIPTION, CATEGORY_ID)
R3: PRODUCT_PRICE phải hớn hơn 0
Nội dung: ∀ g ∈ PRODUCT, g.PRODUCT_PRICE > 0.
Bảng tầm ảnh hưởng:
2.5.1.2 RBTV liên bộ
PRODUCT (PRODUCT_ID, PRODUCT_NAME, PRODUCT_IMAGE,
PRODUCT_PRICE, PRODUCT_DESCRIPTION, CATEGORY_ID)
R4: PRODUCT_ID phải là duy nhất trong bảng PRODUCT
Nội dung: ∀ h1, h2 ∈ PRODUCT, h1 PRODUCT_ID # h2 PRODUCT_ID.
Trang 12Bảng tầm ảnh hưởng:
CATEGORY (CATEGORY_ID, CATEGORY_NAME).
R5: CATEGORY_ID phải là duy nhất trong bảng CATEGORY
Nội dung: ∀ h1, h2 ∈ CATEGORY, h1 CATEGORY_ID # h2 CATEGORY _ID.
Bảng tầm ảnh hưởng:
BILL (BILL_ID, USER_ID, TOTAL, PAYMENT, ADDRESS, DATE).
R6: BILL_ID phải là duy nhất trong bảng BILL
Nội dung: ∀ h1, h2 ∈ BILL, h1 BILL_ID # h2 BILL_ID.
Bảng tầm ảnh hưởng:
USERS (USER_ID, USER_FULLNAME, USER_EMAIL, USER_PASS)
R7: USER_ID phải là duy nhất trong bảng USERS
Nội dung: ∀ h1, h2 ∈ USERS, h1 USER_ID # h2.USER_ID.
Bảng tầm ảnh hưởng:
ADMIN (ADMIN_ID, PASSWORD, NAME).
R8: ADMIN _ID phải là duy nhất trong bảng ADMIN
Nội dung: ∀ h1, h2 ∈ ADMIN, h1 ADMIN_ID # h2 ADMIN_ID.
Bảng tầm ảnh hưởng:
Trang 132.5.2 RBTV trên nhiều loại quan hệ
2.5.2.1 RBTV tham chiếu
PRODUCT (PRODUCT_ID, PRODUCT_NAME, PRODUCT_IMAGE,
PRODUCT_PRICE, PRODUCT_DESCRIPTION, CATEGORY_ID)
CATEGORY (CATEGORY_ID, CATEGORY_NAME).
R9: CATEGORY_ID trong bảng PRODUCT phải thuộc CATEGORY_ID trong bảng CATEGORY.
Nội dung: h1 PRODUCT, ∃h2 CATEGORY: h1 CATEGORY_ID= h2 CATEGORY_ID.
Bảng tầm ảnh hưởng:
BILL (BILL_ID, USER_ID, TOTAL, PAYMENT, ADDRESS, DATE).
USERS (USER_ID, USER_FULLNAME, USER_EMAIL, USER_PASS)
R10: USER_ID trong bảng BILL phải thuộc USER_ID trong bảng USERS Nội dung: h1 BILL, ∃h2 USERS: h1 USER_ID= h2 USER _ID.
Bảng tầm ảnh hưởng:
Trang 14CHƯƠNG 3: THIẾT KẾ 3.1 Tạo cơ sở dữ liệu
3.2 Tạo các bảng và các RBTV
Các bảng trong cơ sở dữ liệu:
Bảng PRODUCT:
Trang 15Bảng CATEGORY:
Bảng BILL:
Trang 16Bảng BILL_DETAIL:
Bảng USERS:
Trang 17Bảng ADMIN:
Trang 183.3 Thực thi các chức năng cơ bản
3.3.1 View
View lấy danh mục sản phẩm:
View lấy danh sách các sản phẩm
View lấy danh sách hóa đơn:
3.3.2 Procedure
Procedure Xoá Sản Phẩm:
Trang 19Procedure Thêm Sản Phẩm:
Procedure update sản phẩm:
Procedure lấy danh sách sản phẩm theo mã sản phẩm:
Trang 20Procedure lấy danh sách sản phẩm theo mã loại sản phẩm:
Procedure chi tiết hóa đơn theo mã hóa đơn:
3.3.3 Các Function
Function tìm kiếm theo tên sản phẩm:
Trang 21CHƯƠNG 4: ỨNG DỤNG 4.1 Công nghệ sử dụng:
Chức năng của người dùng:
Chức năng đăng ký: Dùng để tạo một tài khoản trên website nhằm trởthành 1 thành viên của website và sử dụng tài khoản đó để mua hàng trênweb
Chức năng đăng nhập: Dùng để đăng nhập khi mua hàng trên web
Chức năng giỏ hàng: Dùng để lưu lại những món hàng muốn mua
Chức năng thanh toán: Dùng thanh toán và chọn hinh thức thanh toán
Chức năng tìm kiếm: Dùng để tìm kiếm những sản phẩm mà mình muốn
Chức năng của người quản trị:
Chức năng quản lý sản phẩm: Dùng để người quản trị thêm sửa xóa thôngtin của các sản phẩm
Chức năng quản lý khách hàng: Dùng để người quản trị thêm sửa xóa thôngtin của các khách hàng
Chức năng quản lý hóa đơn: Dùng để người quản trị thêm sửa xóa thông tincủa các hóa đơn
Trang 224.2.2 Giao diện của website:
Trang chủ:
Trang Sản phẩm:
Trang 23Trang sản phẩm chi tiết, bình luận:
Trang đăng ký khách hàng:
Trang 24Trang đăng nhập khách hàng:
Chi tiết giỏ hàng:
Trang 25Trang thanh tóan checkout:
Trang tìm kiếm sản phẩm:
Trang 26Trang đăng nhập Admin:
Trang chủ Admin:
Trang 27Trang quản lý Danh mục:
Trang quản lý sản phẩm:
Trang 28Trang thêm, xóa, sửa sản phẩm mới:
Trang 29Trang quản lý đơn hàng:
Xem chi tiết đơn hàng:
Trang 30Trang quản lý khách hàng:
Trang liên hệ:
Trang 31Trang thống kê
Trang 324.2.3 Kết quả đạt được:
Qua quá trình học lý thuyết, thực hành, làm đề tài thì nhóm em đã đạt được những kết quả sau:
Hiểu được các cấu trúc câu lệnh trong Oracle
Xây dựng được một trang web bán hàng với Oracle
Tuy nhiên do thời gian có hạn và kiến thức còn hạn chế nên trang web còn nhiều hạn chế Nếu có điều kiện nhóm em sẽ phát triển trang web tốt hơn nữa
Trang 33TÀI LIỆU THAM KHẢO
[1] Slide bài giảng Oracle, Th.S VÕ HOÀNG KHANG, Khoa CNTT, HUTECH