Mục đích nghiên cứu Đáp ứng các yêu cầu của khách hàng với giao diện thân thiện dễ sử dụng trong quá trình quản lý thống kê, báo cáo, tìm kiếm, quản lý các hàng hóa, sản phẩm.. 1.1.1
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM – ĐẠI HỌC ĐÀ NẴNG
KHOA TIN HỌC
BÁO CÁO KHÓA LUẬN TỐT NGHIỆP
TÊN ĐỀ TÀI
XÂY DỰNG WEBSITE BÁN HÀNG BẰNG NGÔN NGỮ ASP.NET
Giảng viên hướng dẫn : ThS PHẠM DƯƠNG THU HẰNG
Mã số sinh viên : 312022151132
Trang 2LỜI CẢM ƠN
Em xin chân thành cảm ơn quý thầy cô trong khoa Tin học nói riêng và toàn thể thầy cô ở trường Đại học Sư Phạm – Đại học Đà Nẵng nói chung, đã cho em những kiến thức bổ ích trong bốn năm học vừa qua
Để hoàn thành báo cáo khóa luận tốt nghiệp, em đã nhận được sự chỉ bảo, sự giúp đỡ tận tình của cô ThS Phạm Dương Thu Hằng và các thầy cô trong khoa Tin học, em xin chân thành cảm ơn
Và em cũng gửi lời cảm ơn đến nhà trường đã luôn nổ lực hỗ trợ cũng như cung cấp cơ sở vật chất và trang bị cho em nhiều kiến thức để hoàn thành bốn năm đại học
Do kiến thức bản thân còn nhiều hạn chế nên sẽ không tránh khỏi những thiếu sót, kính mong được nhận xét, phê bình, góp ý của thầy cô để em có thể thêm kinh nghiệm và phát triển bản thân sau này
Cuối cùng em xin chúc Ban giám hiệu và quý thầy cô trường Đại học Sư Phạm
Đà Nẵng có nhiều sức khỏe, hoàn thành công tác trong việc trồng người
Xin trân trọng cảm ơn!
Đà Nẵng, ngày 10 tháng 04 năm 2019
Sinh viên thực hiện
Nguyễn Thị Hồng Ly
Trang 3LỜI CAM ĐOAN
Em xin cam đoan:
Những nội dung trong báo cáo này là do em thực hiện dưới sự hướng dẫn trực tiếp của giáo viên hướng dẫn ThS Phạm Dương Thu Hằng
Mọi tham khảo dùng trong báo cáo này đều được trích dẫn rõ ràng tên tác giả, thời gian, địa điểm công bố
Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, em xin chịu hoàn toàn trách nhiệm
Sinh viên thực hiện,
Nguyễn Thị Hồng Ly
Trang 4MỤC LỤC
LỜI MỞ ĐẦU 1
Lý do chọn đề tài 1
Khách thể và đối tượng nghiên cứu 1
Giới hạn và phạm vi nghiên cứu 1
Mục đích nghiên cứu 2
Nhiệm vụ nghiên cứu 2
Phương pháp nghiên cứu 2
Bố cục đề tài 2
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 3
1.1 Giới thiệu nền tảng Net (ASP.NET) 3
1.1.1 Mô hình MVC (Model – View – Controller) 4
1.2 HTML5 và CSS3 5
1.2.1 HTML5 6
1.3 JAVASCRIPT 7
1.3.1 Javascrip là gì? 7
1.3.2 Các thư viện Javascrip đình đám hiện nay .7
1.4 Boostrap 7
1.4.1 Boostrap là gì? 7
1.4.2 Lấy Bootstrap từ đâu? 8
1.5 AJAX 8
1.6 SQL SERVER 8
1.6.1 Lịch sử ra đời SQL Server và các phiên bản 8
1.6.2 Đặc điểm của SQL Server và đối tượng làm việc 9
Đặc điểm: 9
Trang 5Đối tượng làm việc của SQL Server 9
1.6.3 Các thành cơ bản trong SQL Server 10
1.7 Font Awesome 11
CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ 13
2.1 Tổng quan về hệ thống 13
2.1.1 Mô tả hệ thống 13
2.1.2 Các chức năng của hệ thống: 14
2.2 Sơ đồ usecase 16
2.2.1 Sơ đồ usecase Toàn hệ thống 16
2.2.2 Sơ đồ usecase Đăng ký 17
2.2.3 Sơ đồ usecase Đăng nhập và Đăng xuất 17
2.2.4 Sơ đồ usecase Admin 18
2.2.6 Sơ đồ usecase Nhân viên 20
2.2.7 Sơ đồ usecase Người dùng 21
2.3 Đặc tả Usecase 21
2.3.1 Đăng ký 21
2.3.2 Đăng nhập 22
2.3.3 Đăng xuất 22
2.3.4 Xem thông tin các loại người dùng 23
2.3.6 Cập nhật thông tin người dùng 24
2.3.7 Xóa người dùng 25
2.3.8 Xem chi tiết thông tin khách hàng 25
2.3.9 Xóa khách hàng 26
2.3.10 Xem chi tiết thông tin danh mục sản phẩm, hàng hóa 27
2.3.11 Cập nhật thông tin danh mục sản phẩm, hàng hóa 27
Trang 62.3.12 Xóa danh mục sản phẩm, hàng hóa 28
2.3.13 Thêm danh mục sản phẩm, hàng hóa 28
2.3.14 Xem chi tiết thông tin sản phẩm, hàng hóa 29
2.3.15 Cập nhật thông tin sản phẩm, hàng hóa 30
2.3.16 Xóa sản phẩm, hàng hóa 30
2.3.17 Xem chi tiết thông tin nhãn hàng 31
2.3.18 Thêm thông tin nhãn hàng 32
2.3.19 Cập nhật thông tin nhãn hàng 32
2.3.20 Xóa nhãn hàng 33
2.3.21 Báo cáo 34
2.3.22 Xem chi tiết hóa đơn 34
2.3.23 Đặt và mua sản phẩm 35
2.4 Cơ sở dữ liệu 36
2.4.1 Sơ đồ chức năng 36
2.4.2 Thiết kế cơ sở dữ liệu 37
a Sơ đồ dữ liệu quan hệ 37
b.Cấu trúc bảng và ràng buộc 38
CHƯƠNG 3: TRIỂN KHAI, KẾT QUẢ ĐẠT ĐƯỢC 48
3.1 Môi trường triển khai 48
3.2 Kết quả triển khai 48
3.2.1 Đăng ký 48
3.2.2 Đăng nhập 48
3.2.3 Trang chủ 50
3.2.4 Trang About Us 50
3.2.5 Trang Department 51
Trang 73.2.6 Trang sản phẩm giảm giá 54
3.2.7 Trang chi tiết sản phẩm 54
3.2.8 Trang giỏi hàng 55
3.2.9 Trang thanh toán 55
3.2.10 Trang Contact Us 56
3.2.11 Trang quản lý 56
3.2.12 Trang quản lý nhân viên 57
3.2.12.1 Trang thêm nhân viên 57
3.2.12.2 Trang thêm nhân viên thành công 58
3.2.12.3 Trang sửa nhân viên 58
3.2.12.4 Trang sửa nhân viên thành công 59
3.2.12.5 Xóa thông tin nhân viên 59
3.2.12.6 Xóa tất cả hoặc một vài thông tin nhân viên 60
3.2.12.7 Tìm kiếm thông tin nhân viên 60
3.2.12.8 Reset mật khẩu nhân viên về mặc định 61
3.2.13 Trang quản lý loại người dùng 61
3.2.14 Trang quản lý khách hàng 62
3.2.14.1 Xóa thông tin khách hàng 62
3.2.14.2 Tìm kiếm thông tin khách hàng 63
3.2.15 Trang quản lý danh mục 63
3.2.15.1 Trang thêm mới danh mục 64
3.2.15.2 Chỉnh sửa danh mục 64
3.2.15.3 Xóa danh mục 65
3.2.15.4 Tìm kiếm danh mục 65
3.2.16 Trang quản lý danh mục sản phẩm 66
Trang 83.2.16.1 Trang thêm mới danh mục sản phẩm 66
3.2.16.2 Trang chỉnh sửa danh mục sản phẩm 67
3.2.16.3 Trang xóa danh mục sản phẩm 67
3.2.16.4 Trang tìm kiếm danh mục sản phẩm 68
3.2.17 Trang quản lý sản phẩm 68
3.2.17.1 Trang thêm mới sản phẩm 69
3.2.17.2 Trang chỉnh sửa sản phẩm 69
3.2.17.3 Trang xóa sản phẩm 70
3.2.18 Trang quản lý nhãn hàng 70
3.2.18.1 Trang thêm mới nhãn hàng 71
3.2.18.2 Trang chỉnh sửa thông tin nhãn hàng 71
3.2.18.3 Trang xóa thông tin nhãn hàng 72
3.2.18.4 Trang xóa thông tin nhãn hàng 72
3.2.18.5 Trang tìm kiếm thông tin nhãn hàng 73
3.2.19 Trang quản lý thông tin hóa đơn 73
3.2.19.1 Trang chi tiết hóa đơn 74
3.2.20 Báo cáo 74
3.2.20.1 Báo cáo doanh thu 75
3.2.20.2 Sản phẩm bán chạy 75
3.2.21 Duyệt sản phẩm 76
3.2.21.1 Tìm kiếm sản phẩm chƣa đƣợc duyệt 76
3.2.21.2 Duyệt sản phẩm 77
KẾT LUẬN 77
TÀI LIỆU THAM KHẢO 79
Trang 9DANH MỤC CÁC TỪ VIẾT TẮT
Trang 10đó chỉ việc ngồi ở nhà với chiếc máy tính đã kết nối Internet mọi người có thể thỏa sức tìm kiếm, lựa chọn sản phẩm mà mình yêu thích mọi lúc mọi nơi Đồng thời giúp cho các nhà quản trị quản lý các các sản phẩm và các đơn hàng được đặt một cách dễ dàng hơn
Với những lý do trên em xin chọn đề tên tài nghiên cứu“ Xây dựng website bán hàng online bằng ngôn ngữ ASP.NET“ nhằm giúp cho các khách hàng có thể xem sản phẩm qua hình ảnh và lựa chọn giá cả phù hợp với túi tiền của mình, đồng thời giúp khách hàng đặt mua sản phẩm mà mình thích nhất và bình luận những đóng góp của mình cho cửa hàng và xem những tin tức mới nhất
Khách thể và đối tượng nghiên cứu
Khách thể: Nhu cầu mua sắm của tất cả mọi người
Đối tượng nghiên cứu bao gồm:
Các khách hàng có nhu cầu mua hàng hóa, sản phẩm
Đối tượng thứ hai mà đề tài muốn nhắm đến là những nhà cung cấp hàng hóa, sản phẩm muốn thương hiệu của mình đến người dùng
Giới hạn và phạm vi nghiên cứu
Tìm hiểu quy trình bán hàng của công ty thông qua các trang web trực tuyến
Tìm hiểu các ngôn ngữ xây dựng hệ thống như: HTML, CSS, SQL, ASP.NET, Entity Framework
Trang 11 Tìm hiểu mô hình MVC
Mục đích nghiên cứu
Đáp ứng các yêu cầu của khách hàng với giao diện thân thiện dễ sử dụng trong quá trình quản lý thống kê, báo cáo, tìm kiếm, quản lý các hàng hóa, sản phẩm
Sử dụng ở tất cả mọi lúc mọi nơi khi cần thiết, giúp cho việc mua bán diễn ra một cách thuận tiện và nhanh chóng hơn
Nhiệm vụ nghiên cứu
Thu thập chi tiết thông tin về các loại hàng hóa, sản phẩm
Quản lý hàng hóa, sản phẩm
Tìm kiếm dữ liệu về các loại hàng hóa, sản phẩm một các nhanh chóng
Phương pháp nghiên cứu
Tìm hiểu, khảo sát các ứng dụng có chức năng tương tự, nghiên cứu và ứng dụng vào đề tài
Tham khảo các giao diện để áp dụng vào đề tài của mình
Xây dựng các chức năng, sau đó nhận sự nhận xét của giáo viên hướng dẫn để hoàn thiện
Ngoài ra nghiên cứu tài liệu, giáo trình hay các tài liệu tham khảo có liên quan đến hệ thống cần xây dựng
Bố cục đề tài
Mở đầu
Giới thiệu lý do chọn đề tài, khách thể và đối tượng nghiên cứu trong đề tài, giới hạn phạm vi nghiên cứu của đề tài, nhiệm vụ và phương pháp nghiên cứu của đề tài
Chương 1: Cơ sở lý thuyết
Nghiên cứu lý thuyết liên quan
Chương 2: Phân tích thiết kế
Trình bày phân tích thiết kế hệ thống và phân tích cơ sở dữ liệu
Chương 3: Triển khai, kết quả đạt được
Các kết quả đã đạt được
Kết luận và kiến nghị
Trang 12CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1.1 Giới thiệu nền tảng Net (ASP.NET)
ASP.Net là một nền tảng ứng dụng web được phát triển và cung cấp bởi Microsoft cho phép những người lập trình tạo ra những trang web động, những ứng dụng web và những dịch vụ web Lần đầu tiên đưa ra thị trường vào tháng 2 năm
2002 cùng với phiên bản 1.0 của NET framework, là công nghệ tiếp nối Microsoft’s Active Server Pages (ASP) ASP.Net được biên dịch dưới dạng Common Language Runtime (CLR), cho phép những người lập trình viết mã ASP.Net viết bất cứ ngôn ngữ nào được hỗ trợ trên nền tảng NET language Sau khi phát hàng phiên bản Internet Information Service 4.0 vào năm 1997, hãng Microsoft bắt đầu nghiên cứu mô hình ứng dụng web để giải quyết những bất tiện của ASP, đặc biệt là việc tách riêng biệt phần thể hiện và phần nội dung cũng như cách viết mã rõ ràng hơn Mark Anders, quản lý của nhóm IIS và Scott Gutthrie, gia nhập vào Micrisoft năm 1997 sau khi tốt nghiệp đại học Duke, được giao nhiệm vụ định hình mô hình cần phát triển Những thiết kế ban đầu được thực hiện trong vòng
2 tháng bởi Anders và Gutthrie Gutthrie đã viết mã prototype đầu tiên vào khoảng thời gian nghỉ lễ giáng sinh 1997 [6]
Trong nhiều năm qua, ASP đã được cho rằng đó thực sự là một lựa chọn hàng đầu cho web developers trong việc xây dựng những web sites trên nền máy chủ web Windows bởi nó vừa linh hoạt mà lại đầy sức mạnh Đầu năm 2002, Microsoft đã cho ra đời một công nghệ mới đó chính là ASP.NET Đây thực sự là một bước nhảy vượt bậc của ASP cả về phương diện tinh tế lẫn hiệu quả cho các developers Nó tiếp tục cung cấp khả năng linh động về mặt hỗ trợ ngôn ngữ, nhưng hơn hẳn về mặt lĩnh vực ngôn ngữ script vốn đã trở nên hoàn thiện và trở thành ngôn ngữ cơ bản của các developers Việc phát triển trong ASP.NET không chỉ yêu cầu hiểu biết
về HTML và thiết kế web mà còn khả năng nắm bắt những khái niệm của lập trình
và phát triển hướng đối tượng [6]
Trang 131.1.1 Mô hình MVC (Model – View – Controller)
Hình 1: Mô hình MVC (Model – View – Controller)
Giới thiệu mô hình MVC:
MVC là chữ viết tắt của Model – View – Controller, đây là bộ ba chứa các lớp được giới thiệu lần đầu tiên bởi Krasner và Pope vào năm 1988, được sử dụng để xây dựng giao diện người dùng trong Smalltalk-80
MVC bao gồm 3 loại đối tượng Model là đối tượng ứng dụng, View là đối tượng biểu diễn màn hình và đối tượng Controller định nghĩa các phản hồi từ khi người sử dụng tương tác với giao diện người sử dụng
Mô hinh MVC tách các thành phần này ra để tăng tính linh hoạt và dễ
sử dụng
MVC tách các View và Model bằng cách thiết lập một giao thức đăng ký/thông báo giữa chúng View phải đảm bảo sự hiện diện của nó phản ánh đúng trạng thái của Model Khi nào có sự thay đổi dữ liệu từ
Model, Model sẽ thông báo cho View đang sử dụng nó (nó phụ thuộc vào)
MVC cũng cho phép chúng ta thay đổi cách một View phản hồi dựa trên tương tác của người dùng mà không làm thay đổi cách trình bày trực quan của nó MVC gói gọn cơ chế phản hồi trong một đối tượng
Trang 14 Chính những tính năng quan trọng đó làm cho mô hình MVC ngày càng được phổ biến rộng rãi, đặc biệt sử dụng nhiều trong quá trình xây dựng các ứng dụng web, mobile vì nó phân tách các chức năng một cách rõ ràng, thuận tiện cho quá trình phát triển và bảo trì [6]
Kiến trúc mô hình MVC: Mô hình MVC là một kiến trúc phần mềm cho ứng dụng mobile, web được sử dụng rộng rãi hiện nay Nó tổ chức mã một cách lợp
lý và có hệ thống Mô hình MVC tách biệt phần xử lý dữ liệu ra khỏi phần giao diện Nó bao gồm ba thành phần chính:
Model: có nhiệm vụ thao tác với cơ sở dữ liệu, nghĩa là nó sẽ chứa tất
cả các hàm, các phương thức truy vấn trực tiếp với dữ liệu
và controller sẽ thông qua các hàm, phương thức đó để lấy dữ liệu rồi gửi qua View
View: có nhiệm vụ hiển thị nội dung sang các đoạn mã dạng xml và đặc biệt là phải nhận được tương tác từ người dùng Có thể hiểu nôm na
ở đây người ta còn gọi là thành phần giao diện
Controller: chính là bộ não của mô hình MVC, đóng vài trò là trung gian giữa Model và View Có nhiệm vụ tiếp nhận yêu cầu từ người dùng sau đó xử lý các yêu cầu hoặc tìm cách xử lí lấy dữ liệu từ Model tương ứng và gửi dữ liệu qua View tương ứng rồi trả kết quả về cho người dùng [6]
1.2 HTML5 và CSS3
Hình 2: Mô hình HTML5
Trang 151.2.1 HTML5
HTML5 là một ngôn ngữ cấu trúc và trình bày nội dung cho World Wide Web và sẽ là công nghệ cốt lõi của Internet trong tương lai không xa, được đề xuất đầu tiên bởi Opera Software
HTML5 đã bổ sung thêm rất nhiều các thẻ đánh dấu (markup) mới:
Các thẻ <header> và <footer> giúp bạn tách các phần trên và dưới của các block nội dung Để có thể sử dụng nhiều lần trên một trang duy nhất
Thẻ <article> giúp xác định một phần cụ thể về nội dung, ví dụ, một bài blog hoặc một bình luận của độc giả
Thẻ <nav> để xác định những phần nào được coi là khối điều hướng
Thẻ <section> cho phép bạn xác định một phần nội dung nào đó; tương tự như các thẻ <div> hiện nay
Các thẻ <audio> và <video> để đánh dấu những nội dung bao gồm âm thanh hoặc video
Thẻ <canvas> cho phép bạn vẽ đồ họa sử dụng một ngôn ngữ kịch bản riêng biệt
Thẻ <embed> dùng để nhúng các nội dung hoặc các ứng dụng bên ngoài vào trang web [6]
CSS làm cho việc thiết kế và xây dựng một trang Web trở nên dễ dàng hơn Trước khi có CSS, bạn phải sử dụng HTML để thực hiện tất cả các tiêu đề cũng như các thành phần của một trang Web Mặc dù đã có một số cách khác nhưng HTML vẫn thường xuyên được sử dụng và các nhà thiết kế Web sẽ phải thay đổi từng thành phần riêng lẻ trên mỗi trang CSS đã giúp cho việc thay đổi phong cách của một trang Web đơn giản hơn và đỡ tốn thời gian hơn, bạn có thể thực hiện sự thay
Trang 16đổi trên một mục nào đó và sau đó apply sự thay đổi này trên toàn bộ trang Web thay vì phải thực hiện trên từng mục riêng lẻ như trước đây [6]
1.3 JAVASCRIPT
1.3.1 Javascrip là gì?
Javascript là một ngôn ngữ lập trình kịch bản dựa vào đối tượng phát triển có sẵn hoặc tự định nghĩa ra, javascript được sử dụng rộng rãi trong các ứng dụng Website Javascript được hỗ trợ hầu như trên tất cả các trình duyệt như Firefox, Chrome, thậm chí các trình duyệt trên thiết bị di động cũng có hỗ trợ
JavaScript là một ngôn ngữ kịch bản
Ngôn ngữ kịch bản là một ngôn ngữ lập trình nhỏ
JavaScript là mã lập trình có thể được chèn vào các trang HTML
JavaScript được chèn vào các trang web có thể được chạy bởi tất cả các trình duyệt web hiện đại
JavaScript là một ngôn ngữ lập trình dễ học [7]
1.3.2 Các thư viện Javascrip đình đám hiện nay
Những ứng dụng to lớn của Javascript khiến người ta không thể quên nó được Hiện nay có rất nhiều libraries, Framework được viết như:
AngularJS: Một thư viện dùng để xây dựng ứng dụng Single Page
NodeJS: Một thư viện được phát triển phía Server dùng để xây dựng
ứng dụng realtime
Sencha Touch: Một Framework dùng để xây dựng ứng dụng Mobile
ExtJS: Một Framework dùng xây dựng ứng dụng quản lý (Web
Trang 17Bootstrap là bao gồm các HTML templates, CSS templates và Javascript tạo
ra những cái cơ bản có sẵn như: typography, forms, buttons, tables, navigation, modals, image carousels và nhiều thứ khác
Bootstrap là dược phát triển bởi Mark Otto và Jacob Thornton tại Twitter Nó được xuất bản như là một mã nguồn mở vào tháng 8 năm 2011 trên GitHub Tính ra đến thời điểm mình viết bài viết này nó cũng đã phát triển được 3 năm rồi Bản bootstrap mới nhất bây giờ là bootstrap 3 [6]
1.4.2 Lấy Bootstrap từ đâu?
Có 2 cách để bạn có thể sử dụng Bootstrap trên web của bạn
Download Bootstrap từ getbootstrap.com
Thêm Bootstrap từ CDN
1.5 AJAX
Một kỹ thuật viết tắt của chữ AJAX = Asynchronous JavaScript and XML, đây là một công nghệ giúp chúng ta tạo ra nhữngweb động mà hoàn toàn không reload lại trang nên rất mượt và đẹp
Được viết bằng ngôn ngữ Java nên nó chạy trên client, tức là mỗi máy (user)
sẽ chạy độc lập không hoàn toàn ảnh hưởng lẫn nhau Hiện nay có nhiều thư viện javascript nhưjQuery hayAngular đều hỗ trợ kỹ thuật này nhằm giúp chúng ta thao tác dễ dàng hơn [6]
1.6 SQL SERVER
SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (Relational Database Management System (RDBMS)) sử dụng câu lệnh SQL (Transact-SQL) để trao đổi
dữ liệu giữa máy Client và máy cài SQL Server
1.6.1 Lịch sử ra đời SQL Server và các phiên bản
Phiên bản đầu tiên của Microsoft SQL Server ra đời đầu tiên vào năm 1989 cho các hệ điều hành chạy 16 bít với SQL Server phiên bản 1.0 và tiếp tục phát triển cho tới ngày nay
SQL Server của Microsoft được thị trường chấp nhận rộng rãi kể từ version 6.5 Sau đó Microsoft đã cải tiến và hầu như viết lại một engine mới cho SQL Server 7.0 Cho nên có thể nói từ version 6.5 lên version 7.0 là một bước nhảy vọt
Có một số đặc tính của SQL Server 7.0 không tương thích với version 6.5 Trong
Trang 18khi đó từ Version 7.0 lên version 8.0 (SQL Server 2000) thì những cải tiến chủ yếu
là mở rộng các tính năng về web và làm cho SQL Server 2000 đáng tin cậy hơn
Một điểm đặc biệt đáng lưu ý ở phiên bản 2000 là Multiple-Instance Tức là
bạn có thể cài dặt phiên bản 2000 chung với các phiên bản trước mà không cần phải
gỡ chúng Nghĩa là bạn có thể chạy song song version 6.5 hoặc 7.0 với phiên bản
2000 trên cùng một máy (điều này không thể xảy ra với các phiên bản trước đây)
Khi đó phiên bản cũ trên máy bạn là Default Instance còn phiên bản 2000 mới vừa cài sẽ là Named Instance
Từ tháng 10 năm 2016, các phiên bản sau được Microsoft hỗ trợ:
SQL là ngôn ngữ tựa tiếng Anh
SQL là ngôn ngữ phi thủ tục, nó không yêu cầu ta cách thức truy nhập CSDL như thế nào Tất cả các thông báo của SQL đều rất dễ sử dụng
và ít khả năng mắc lỗi
SQL cung cấp tập lệnh phong phú cho các công việc hỏi đáp DL:
+ Chèn, cập nhật, xoá các hàng trong một quan hệ
+ Tạo, sửa đổi, thêm và xoá các đối tượng trong của CSDL
+ Điều khiển việc truy nhập tớicơ sở dữ liệuvà các đối tượng của CSDL để đảm bảo tính bảo mật của cơ sở DL
+Đảm bảo tính nhất quán và sự ràng buộc của CSDL
Yêu cầu duy nhất để sử dụng cho các hỏi đáp là phải nắm vững được các cấu trúc CSDL của mình [7]
Đối tượng làm việc của SQL Server
Là các bảng (tổng quát là các quan hệ) dữ liệu hai chiều Các bảng này bao gồm một hoặc nhiều cột và hàng Các cột gọi là các trường, các hàng gọi là các bản
Trang 19ghi Cột với tên gọi và kiểu dữ liệu (kiểu dl của mỗi cột là duy nhất) xác định tạo nên cấu trúc của bảng (Ta có thể dùng lệnh Desc[ribe] TABLE-name để xem cấu trúc của bảng, phần tuỳ chọn[] có thể được bỏ trong Oracle) Khi bảng đã được tổ chức hệ thống cho một mục đích nào đó có một CSDL [7]
1.6.3 Các thành cơ bản trong SQL Server
SQL Server được cấu tạo bởi nhiều thành phần như Database Engine, Reporting Services, Notification Services, Integration Services, Full Text Search Service Các thành phần này khi phối hợp với nhau tạo thành một giải pháp hoàn chỉnh giúp cho việc lưu trữ và phân tích dữ liệu một cách dễ dàng
Database Engine
– Cái lõi của SQL Server:
Ðây là một engine có khả năng chứa data ở các quy mô khác nhau dưới dạng table
và support tất cả các kiểu kết nối (data connection) thông dụng của Microsoft như ActiveX Data Objects (ADO), OLE DB, and Open Database Connectivity (ODBC) Ngoài ra nó còn có khả năng tự điều chỉnh (tune up) ví dụ như sử dụng thêm các tài nguyên (resource) của máy khi cần và trả lại tài nguyên cho hệ điều hành khi một user log off
Replication
– Cơ chế tạo bản sao (Replica):
Giả sử bạn có một database dùng để chứa dữ liệu được các ứng dụng thường xuyên cập nhật Một ngày đẹp trời bạn muốn có một cái database giống y hệt như thế trên một server khác để chạy báo cáo (report database) (cách làm này thường dùng để tránh ảnh hưởng đến performance của server chính) Vấn đề là report server của bạn cũng cần phải được cập nhật thường xuyên để đảm bảo tính chính xác của các báo cáo Bạn không thể dùng cơ chế back up and restore trong trường hợp này Thế thì bạn phải làm sao? Lúc đó cơ chế replication của SQL Server sẽ được sử dụng để bảo đảm cho dữ liệu ở 2 database được đồng bộ (synchronized) Replication sẽ được bàn kỹ trong bài 12
Trang 20SQL Server, Microsoft Access….Bạn chắc chắn sẽ có nhu cầu di chuyển data giữa các server này (migrate hay transfer) và không chỉ di chuyển bạn còn muốn định dạng (format) nó trước khi lưu vào database khác, khi đó bạn sẽ thấy DTS giúp bạn giải quyết công việc trên dễ dàng
Analysis Services
– Một dịch vụ phân tích dữ liệu rất hay của Microsoft
Dữ liệu (Data) chứa trong database sẽ chẳng có ý nghĩa gì nhiều nếu như bạn không thể lấy được những thông tin (Information) bổ ích từ đó Do đó Microsoft cung cấp cho bạn một công cụ rất mạnh giúp cho việc phân tích dữ liệu trở nên dễ dàng và hiệu quả bằng cách dùng khái niệm hình khối nhiều chiều (multi-dimension cubes)
và kỹ thuật “khai phá dữ liệu” (data mining)
Notification Services
Dịch vụ thông báo Notification Services là nền tảng cho sự phát triển và triển khai các ứng dụng tạo và gửi thông báo Notification Services có thể gửi thông báo theo địch thời đến hàng ngàn người đăng ký sử dụng nhiều loại thiết bị khác nhau
Reporting Services
Reporting Services bao gồm các thành phần server và client cho việc tạo, quản lý và triển khai các báo cáo Reporting Services cũng là nền tảng cho việc phát triển và xây dựng các ứng dụng báo cáo
Full Text Search Service
Dịch vụ SQL Server Full Text Search là một dịch vụ đặc biệt cho đánh chỉ mục và truy vấn cho dữ liệu văn bản không cấu trúc được lưu trữ trong các CSDL SQL Server Đánh chỉ mục với Full Text Search có thể được tạo trên bất kỳ cột dựa trên
dữ liệu văn bản Nó sẽ rất hiệu quả cho việc tìm các sử dụng toán tử LIKE trong SQL với trường hợp tìm văn bản
Service Broker
Được sử dụng bên trong mỗi Instance, là môi trường lập trình cho việc các ứng dụng nhảy qua các Instance Service Broker giao tiếp qua giao thức TCP/IP và cho phép các component khác nhau có thể được đồng bộ cùng nhau theo hướng trao đổi các message Service Broker chạy như một phần của bộ máy cơ sở dữ liệu, cung cấp một nền tảng truyền message tin cậy và theo hàng đợi cho các ứng dụng SQL Server [7]
1.7 Font Awesome
Trong một layout website thường sẽ có những ICON giúp website đẹp và thân thiện hơn, và ngoài ra các ICON đó còn có tác dụng điều hướng người dùng
Trang 21Font Awesome là là một thư viện chứa cácfont chữ ký hiệuhay sử dụng trong website Font chữ ký hiệu ở đây chính là các icons mà ta thường hay sử dụng trong
các layout website [6]
Trang 22CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ
2.1 Tổng quan về hệ thống
2.1.1 Mô tả hệ thống
Admin có nhiệm vụ quản lý toàn hệ thống
Quản lí có nhiệm vụ quản lý toàn bộ hệ thống nhưng không được duyệt sản phẩm và chỉ xem thông tin người dùng
Khách hàng sử dụng hệ thống:
- Xem được trang chủ là list các tất cả hàng hóa, sản phẩm
- Xem được chi tiết các hàng hóa, sản phẩm
- Tìm kiếm thông tin
- Reset lại mật khẩu cho người dùng
- Xem các phản hồi của khách hàng
- Thay đổi thông tin của tài khoản
Trang 23- Tìm kiếm thông tin
- Quản lý hóa đơn
- Báo cáo
- Xem các phản hồi của khách hàng
- Thay đổi thông tin của tài khoản
Nhân viên có chức năng:
- Tìm kiếm thông tin
- Thay đổi thông tin tài khoản
2.1.2 Các chức năng của hệ thống:
5 Xem chi tiết thông tin người dùng
9 Xem chi tiết thông tin khách hàng
Trang 2412 Xem chi tiết thông tin danh mục sản phẩm, hàng hóa
13 Cập nhật thông tin danh mục sản phẩm, hàng hóa
15 Tìm kiếm danh mục sản phẩm, hàng hóa
17 Xem chi tiết thông tin sản phẩm, hàng hóa
18 Cập nhật thông tin sản phẩm, hàng hóa
21 Xem chi tiết thông tin nhãn hàng
26 Chỉnh sửa thông tin cá nhân
30 Xem thông tin chi tiết hóa đơn
31 Bình luận và đánh giá sản phẩm, hàng hóa
Trang 25Sau đây là hệ thống sơ đồ user case của ứng dụng:
2.2.1 Sơ đồ usecase Toàn hệ thống
Hình 3: Sơ đồ Use Case mô tả chức năng tổng thể
Trang 262.2.2 Sơ đồ usecase Đăng ký
Hình 4: Sơ đồ Use Case mô tả chức năng đăng ký
2.2.3 Sơ đồ usecase Đăng nhập và Đăng xuất
Hình 5: Sơ đồ Use Case mô tả chức năng đăng nhập và đăng xuất
Trang 272.2.4 Sơ đồ usecase Admin
Hình 6: Sơ đồ Use Case mô tả chức năng Admin
Trang 282.2.5 Sơ đồ usecase Quản lý
Hình 7: Sơ đồ Use Case mô tả chức năng Quản lý
Trang 292.2.6 Sơ đồ usecase Nhân viên
Hình 8: Sơ đồ Use Case mô tả chức năng Nhân viên
Trang 302.2.7 Sơ đồ usecase Người dùng
Hình 9: Sơ đồ Use Case mô tả chức năng Người dùng 2.3 Đặc tả Usecase
Chưa tồn tại tài khoản
Sau xử lý Hiển thị trang đăng nhập
Các bước thực hiện Vào trang đăng ký
Nhập email, password, tên, số điện thoại
Nhấn vào button “Đăng ký”
Trang 31Ngoại lệ Không điền đủ thông tin hoặc chưa đúng định dạng sẽ
hiển thị thông báo lỗi
Bảng 2.2: Bảng đặc tả usecase đăng ký
2.3.2 Đăng nhập
Mô tả Kiểm tra và xác thực vai trò người dùng Có thể đăng
nhập bằng tài khoản facebook( đối với khách hàng) Người thực hiện Quản lý, Admin, Nhân viên, Khách hàng
Điều kiện trước xử
lý
Tồn tại tài khoản
Sau xử lý Hiển thị trang chủ tùy theo từng tài khoản Nếu tài
khoản là khách hàng sẽ hiển thị trang chủ bao gồm các sản phẩm, Còn ngược lại thì sẽ hiển thị trang chủ quản lý
Các bước thực hiện Vào trang đăng nhập
Nhập email và password Hoặc click vào biểu tượng Facebook để đăng nhập đối với tài khoản khách hàng Nhấn vào button “Đăng nhập”
Ngoại lệ Sai tên hoặc bỏ trống đăng nhập hoặc mật khẩu, hiển
thị thông báo lỗi
Bảng 2.3: Bảng đặc tả usecase đăng nhập
2.3.3 Đăng xuất
Trang 32Tên Đăng xuất
Người thực hiện Quản lý, Admin, Nhân viên, Khách hàng
Bảng 2.4: Bảng đặc tả usecase đăng xuất
2.3.4 Xem thông tin các loại người dùng
Mô tả Xem thông tin: ID loại người dùng, tên loại người
Trang 332.3.5 Xem thông tin người dùng
Mô tả Xem thông tin: UserName, Email, Phone number, tên
Sau xử lý Hiển thị trang xem thông tin người dùng
Các bước thực hiện Click vào “Manage Users”
Ngoại lệ
Bảng 2.6: Bảng đặc tả usecase xem thông tin người dùng
2.3.6 Cập nhật thông tin người dùng
Mô tả Cập nhật thông tin một người dùng trong cơ sở dữ
Trang 34thông tin
Nhập đầy đủ thông tin hợp lệ vào form Update User Nhấn button “Save” để thực hiện
Nhấn button “Cancel” để đóng form
Ngoại lệ Chưa nhập đầu đủ các trường hoặc nhập sai thông tin
sẽ báo lỗi
Bảng 2.7: Bảng đặc tả usecase cập nhật thông tin người dùng
2.3.7 Xóa người dùng
Mô tả Xóa thông tin một người dùng trong cơ sở dữ liệu Người thực hiện Admin
Bảng 2.8: Bảng đặc tả usecase xóa người dùng
2.3.8 Xem chi tiết thông tin khách hàng
Trang 35Mô tả Xem thông tin: Name, Email, Phone number, Unit Người thực hiện Quản lý, Admin, Nhân viên
Điều kiện trước xử
lý
Đã đăng nhập vào hệ thống
Sau xử lý Hiển thị trang xem thông tin khách hàng
Các bước thực hiện Vào trang quản lý
Click vào “Manage Customers”
Trang 362.3.10 Xem chi tiết thông tin danh mục sản phẩm, hàng hóa
Tên Xem chi tiết thông tin danh mục sản phẩm, hàng hóa
Người thực hiện Quản lý, Admin, Nhân viên
Các bước thực hiện Vào trang quản lý
Click vào “Manage Customers”
Ngoại lệ
Bảng 2.11: Bảng đặc tả usecase xem chi tiết thông tin danh mục
2.3.11 Cập nhật thông tin danh mục sản phẩm, hàng hóa
Mô tả Cập nhật thông tin một danh mục trong cơ sở dữ liệu Người thực hiện Quản lý, Admin, Nhân viên
Trang 37Các bước thực hiện Vào “Manage Categories”
Nhấn icon có hình dạng cây bút của record muốn sửa thông tin
Nhập đầy đủ thông tin hợp lệ vào form Update Category
Nhấn button “Save” để thực hiện
Nhấn button “Cancel” để đóng form
Ngoại lệ
Bảng 2.12: Bảng đặc tả usecase cập nhật thông tin danh mục
2.3.12 Xóa danh mục sản phẩm, hàng hóa
Mô tả Xóa thông tin một danh mục ra khỏi cơ sở dữ liệu Người thực hiện Quản lý, Admin, Nhân viên
Bảng 2.13: Bảng đặc tả usecase xóa danh mục
2.3.13 Thêm danh mục sản phẩm, hàng hóa
Trang 38Tên Thêm thông tin danh mục sản phẩm, hàng hóa
Mô tả Thêm thông tin một danh mục vào cơ sở dữ liệu Người thực hiện Quản lý, Admin, Nhân viên
Nhấn button “Cancel” để đóng form
Ngoại lệ Chưa nhập đầu đủ các trường hoặc nhập sai thông tin
sẽ báo lỗi
Bảng 2.14: Bảng đặc tả usecase thêm danh mục
2.3.14 Xem chi tiết thông tin sản phẩm, hàng hóa
Mô tả Xem thông tin: tên, mã, số lượng, mô tả, nhãn hàng Người thực hiện Quản lý, Admin, Nhân viên
Trang 39Các bước thực hiện Vào trang quản lý
Click vào “Manage Products”
Ngoại lệ
Bảng 2.15: Bảng đặc tả usecase xem thông tin sản phẩm
2.3.15 Cập nhật thông tin sản phẩm, hàng hóa
Mô tả Cập nhật một thông tin sản phẩm trong cơ sở dữ liệu Người thực hiện Quản lý, Admin, Nhân viên
Nhấn button “Save” để thực hiện
Nhấn button “Cancel” để đóng form
Ngoại lệ
Bảng 2.16: Bảng đặc tả usecase cập nhật thông tin sản phẩm
2.3.16 Xóa sản phẩm, hàng hóa
Trang 40Tên Xóa sản phẩm, hàng hóa
Mô tả Xóa một thông tin sản phẩm, hàng hóa trong cơ sở dữ
Mô tả Xem chi tiết thông tin nhãn hàng trong cơ sở dữ liệu Người thực hiện Quản lý, Admin, Nhân viên
Điều kiện trước xử
lý
Đã đăng nhập vào hệ thống
Sau xử lý Hiển thị trang xem thông tin nhãn hàng
Các bước thực hiện Vào trang quản lý
Click vào “Manage Brands”
Ngoại lệ