LỜI CẢM ƠN
Trên thực tế khơng có sự thành cơng nào mà không gắn liền với những sự hỗ
trợ, giúp đỡ dù ít hay nhiều, dù trực tiếp hay gián tiếp của người khác. Trong suốt thời
sự quan tâm, giúp đỡ của q Thầy Cơ, gia đình và bạn bè.
uế
gian từ khi bắt đầu học tập ở giảng đường đại học đến nay, em đã nhận được rất nhiều
tế
H
Với lòng biết ơn sâu sắc nhất, em xin gửi đến quý Thầy, Cô ở Khoa Hệ thống
Thông tin Kinh tế – Trường Đại Học Kinh Tế Huế với tri thức và tâm huyết của mình
đã truyền đạt vốn kiến thức quý báu cho chúng em trong suốt thời gian học tập tại
trường.
h
Em xin gửi lời cảm ơn chân thành nhất đến thầy giáo – giáo viên hướng dẫn
in
Thạc Sĩ Nguyễn Thanh Tuấn trong suốt thời gian vừa qua đã không quản ngại khó
cK
khăn và đã nhiệt tình chỉ dạy, giúp đỡ để Em có thể hồn thành tốt bài khóa luận tốt
nghiệp này. Một lần nữa, em xin chân thành
Em xin gửi lời cảm ơn đến toàn bộ các cán bộ nhân viên Công ty cổ phần
họ
BPOTech, đặc biệt là các Anh, Chị tại chi nhánh BPOTech Huế, những người đã trực
tiếp hướng dẫn, chỉ bảo và đã cho Em nhiều kinh nghiệm quý báu trong suốt thời gian
Đ
ại
thực tập tại công ty.
Em cũng xin gửi lời cảm ơn sâu sắc đến tồn thể bạn bè, người thân, gia đình
những người đã luôn bên cạnh Em, cổ vũ tinh thần lớn lao và đã ủng hộ Em trong suốt
Tr
ườ
ng
thời gian qua.
Huế, ngày 16 tháng 5 năm 2014.
Sinh viên thực hiện
(ký và ghi rõ họ tên)
Nguyễn Văn Biểu
Khóa luận tốt nghiệp đại học
MỤC LỤC
DANH MỤC CÁC KÍ KIỆU VÀ CHỮ VIẾT TẮT .......................................................4
DANH MỤC CÁC HÌNH VẼ, SƠ ĐỒ, BIỂU ĐỒ.........................................................8
uế
DANH MỤC BẢNG BIỂU...........................................................................................10
MỞ ĐẦU .......................................................................................................................11
tế
H
1. Lý do chọn đề tài .......................................................................................................11
2. Mục tiêu nghiên cứu ..................................................................................................11
3. Đối tượng và phạm vi nghiên cứu .............................................................................12
h
4. Phương pháp nghiên cứu ...........................................................................................12
in
5. Kết cấu đề tài .............................................................................................................12
cK
PHẦN II: NỘI DUNG NGHIÊN CỨU.........................................................................13
CHƯƠNG 1: CƠ SỞ LÝ LUẬN...................................................................................13
1.1. Nền tảng ứng dụng web ASP.NET.........................................................................13
họ
1.1.1. Giới thiệu về ASP.NET .......................................................................................13
1.1.2. Lịch sử hình thành và phát triển ..........................................................................13
Đ
ại
1.2. Nền tảng ứng dụng web ASP.NET MVC ..............................................................16
1.2.1. Tổng quan về nền tảng ASP.NET MVC .............................................................16
1.2.2. Các tính năng của nền tảng ASP.NET MVC ......................................................18
ng
1.2.3. So sánh lợi ích của việc lựa chọn nền tảng ASP.NET hay ASP.NET MVC ......19
ườ
1.3. ADO.NET Entity Framework ................................................................................21
1.3.1. Khái niệm ORM ..................................................................................................21
Tr
1.3.2. Khái niệm nền tảng LINQ (Language Integrated Query – Ngơn ngữ truy vấn
tích hợp).........................................................................................................................21
1.3.3. Tổng quan về ADO.NET Entity framework .......................................................22
1.4. Microsoft SQL server .............................................................................................24
1.4.1. Tổng quan về MS SQL server .............................................................................24
Sinh viên thực hiện: Nguyễn Văn Biểu
1
Khóa luận tốt nghiệp đại học
1.4.2. Thành phần của MS SQL server .........................................................................24
1.5. Các phương pháp nghiên cứu, giải pháp công nghệ được ứng dụng để xây dựng hệ
thống ..............................................................................................................................25
1.5.1. Phương pháp lập trình hướng đối tượng..............................................................25
uế
1.5.2. Phương pháp phân tích có cấu trúc – phướng pháp hướng chức năng SADT
tế
H
(Structured Analysis and Design Technie)....................................................................26
CHƯƠNG 2: BÀI TOÁN QUẢN LÝ ĐIỂM CỦA SINH VIÊN TẠI TRƯỜNG ĐẠI
HỌC KINH TẾ - ĐẠI HỌC HUẾ.................................................................................27
2.1. Tổng quan về trường Đại học Kinh tế - Đại học Huế ............................................27
in
h
2.1.1. Giới thiệu .............................................................................................................27
2.1.2. Quá trình hình thành và phát triển .......................................................................27
cK
2.1.3. Tầm nhìn và sứ mệnh của đơn vị.........................................................................27
2.1.4. Cơ cấu tổ chức .....................................................................................................28
họ
2.2. Mơ tả bài tốn .........................................................................................................30
2.3. Mơ tả u cầu .........................................................................................................31
Đ
ại
CHƯƠNG 3: XÂY DỰNG HỆ THỐNG QUẢN LÝ ĐIỂM CỦA SINH VIÊN TẠI
TRƯỜNG ĐẠI HỌC KINH TẾ - ĐẠI HỌC HUẾ.......................................................33
3.1. Phân tích hệ thống quản lý điểm của sinh viên tại trường Đại học Kinh tế - Đại
ng
học Huế..........................................................................................................................33
3.1.1. Sơ đồ phân rã chức năng hệ thống (BFD – Bussiness Function Diagram).........33
ườ
3.1.2. Sơ đồ ngữ cảnh (Context Diagram).....................................................................37
3.1.3. Sơ đồ luồng dữ liệu (DFD – Data Flow Diagram) ..............................................38
Tr
3.2. Thiết kế cơ sở dữ liệu .............................................................................................41
3.2.1. Xác định các thực thể và thuộc tính của thực thể................................................41
3.2.2. Xác định mối quan hệ giữa các thực thể .............................................................43
3.2.3. Mơ hình thực thể mối quan hệ (ERD – Entity Relationship Diagram)...............44
3.2.4. Chuẩn hóa cơ sở dữ liệu ......................................................................................44
Sinh viên thực hiện: Nguyễn Văn Biểu
2
Khóa luận tốt nghiệp đại học
3.2.5. Lược đồ quan hệ của cơ sở dữ liệu......................................................................50
3.3. Thiết kế thuật toán ..................................................................................................51
3.3.1. Kí hiệu sử dụng....................................................................................................51
uế
3.3.2. Một số quy trình chính ........................................................................................51
3.4. Thiết kế giao diện ...................................................................................................68
tế
H
PHẦN III: KẾT LUẬN VÀ KIẾN NGHỊ.....................................................................70
Tr
ườ
ng
Đ
ại
họ
cK
in
h
TÀI LIỆU THAM KHẢO .............................................................................................72
Sinh viên thực hiện: Nguyễn Văn Biểu
3
Khóa luận tốt nghiệp đại học
DANH MỤC CÁC KÍ KIỆU VÀ CHỮ VIẾT TẮT
Tên viết tắt
Tên đầy đủ
Ý nghĩa
.Net
Là một nền tảng lập trình và cũng là một
nền tảng thực thi ứng dụng chủ yếu trên hệ
ASP
Active Server Page
tế
H
triển bởi Microsoft
uế
điều hành Microsoft Windows được phát
Một tài liệu chứa cả ngữ pháp của HTML
lẫn những cấu trúc script
ActiveX Data Object
là một kỹ thuật giúp kết nối với các cơ sở
h
ADO
in
dữ liệu và có thể dùng cùng một câu lệnh để
thực hiện cho cùng một mục đích trên các
API
cK
CSDL khác nhau
Application
Giao diện lập trình ứng dụng, chức năng
cho phép các đối tượng bên ngồi có thể
họ
Programming Interface
thao tác ứng dụng
Đ
ại
Code behind
ườ
ng
Cookie
Một phong cách lập trình kết hợp thao tác
trên giao diện đồ họa. Tách biệt giữa giao
diện và mã lệnh
là một dạng bản ghi được tạo ra và lưu lại
trên trình duyệt khi người dùng truy cập
một website
Cơ sở dữ liệu
Cơ sở dữ liệu
DI
Dependency Injection
là một trong hai mơ hình thiết kế mã lệnh
Tr
CSDL
DLL
phổ biến dựa trên nguyên lý IoC
Dynamic Linker
Thư viện liên kết động, là một thư viện cho
Library
phép các ứng dụng có thể liên kết đến và sử
dụng nó. Nó được xem là một tổ hợp các
Sinh viên thực hiện: Nguyễn Văn Biểu
4
Khóa luận tốt nghiệp đại học
hàm và dữ liệu mà có thể được sử dụng bởi
nhiều ứng dụng khác nhau trong cùng một
thời điểm
Entity Framework
là một chức năng của ADO.NET entity
Wizard
framework cho phép tạo mã lệnh và mơ
uế
EF Wizard
FSO
tế
H
hình dữ liệu từ cơ sở dữ liệu có trước
File System Object
là một cấu trúc không phân cấp trong thao
tác cho phép đọc và tạo tệp tin văn bản
h
ASCII và Unicode
là bộ xử lý mà tất cả các yêu cầu của người
in
Front Controller
dùng đều phải đi qua
HyperText Transfer
Protocol
thức cơ bản mà World Wide Web sử dụng
Hyper Text Makeup
Language
ngôn ngữ đánh dấu siêu văn bản, là một
họ
HTML
giao thức truyền tải siêu văn bản, là giao
cK
HTTP
ngôn ngữ đánh dấu được thiết kế ra để tạo
Đ
ại
nên các trang web với các mẩu thông tin
Internet Information
là các dịch vụ dành cho máy chủ chạy trên
Service
nền Hệ điều hành Window nhằm cung cấp
ng
IIS
được trình bày trên World Wide Web
và phân tán các thông tin lên mạng
Inversion of Control
Nguyên lý đảo ngược điều khiển
CLR
Common Language
Một môi trường thực thi cho các ứng dụng
Runtime
nền tảng .NET
Component Object
Một mơ hình giao diện trung gian cho phép
Model
hai component khác nhau có thể hiểu nhau
Model View Controller
Mơ hình phân tách mã lệnh của ứng dụng
Tr
ườ
IoC
COM
MVC
Sinh viên thực hiện: Nguyễn Văn Biểu
5
Khóa luận tốt nghiệp đại học
theo chức năng gồm: model (thao tác với cơ
sở dữ liệu), view (tiếp xúc với người dùng),
controller (bộ xử lý)
Namespace
Phần tên mở rộng của các lớp mà microsoft
Nền tảng windows
Đề cập đến các phần mềm hoạt động trên hệ
tế
H
window
uế
quy ước để sắp xếp các hàm, lớp
điều hành Window của Microsoft
Razor
Razor View Engine
là 1 ngôn ngữ ngắn gọn, rõ ràng và hữu ích,
h
mà nó cho phép tạo ra các giao diện cho
in
ứng dụng ASP.NET MVC trong khi vẫn giữ
được sự phân chia rỏ ràng, khả năng có thể
cK
kiểm tra, và sự phát triển dựa trên hình mẫu
ban đầu
Representational State
Transfer
định nghĩa một nhóm các quy tắc kiến trúc
họ
REST
để thiết kế dịch vụ web chú trọng vào tài
ng
Đ
ại
nguyên hệ thống, bao gồm các trạng thái tài
Tr
ườ
SQL
TDD
T-SQL
nguyên được định dạng như thế nào và
được chuyển tải qua HTTP thông qua số
lượng lớn người dùng và được viết bởi
những ngôn ngữ khác nhau
Structured Query
ngơn ngữ truy vấn mang tính cấu trúc, là
Language
một loại ngơn ngữ máy tính phổ biến để tạo,
sửa, và lấy dữ liệu từ một hệ quản trị cơ sở
dữ liệu quan hệ
Test-driven
mơ hình phát triển ứng dụng định hướng
Development
kiểm thử
Transact-SQL
là ngôn ngữ SQL mở rộng dựa trên SQL
Sinh viên thực hiện: Nguyễn Văn Biểu
6
Khóa luận tốt nghiệp đại học
chuẩn của ISO
URL
Uniform Resource
Định vị Tài nguyên thống nhất, được dùng
Locator
để tham chiếu tới tài nguyên trên Internet.
URL mang lại khả năng siêu liên kết cho
ASP.NET Web Form
là một phần của khung ứng dụng ASP.NET.
tế
H
Web Form
uế
các trang mạng
Nó là một trong ba mơ hình lập trình khác
nhau mà có thể sử dụng để tạo ứng dụng
web ASP.NET, phần cịn lại là ASP.NET
eXtensible Markup
Ngơn ngữ Đánh dấu Mở rộng, là ngơn ngữ
Language
đánh dấu với mục đích chung do W3C đề
cK
XML
in
h
MVC và ASP.NET Web Pages
Tr
ườ
ng
Đ
ại
họ
nghị, để tạo ra các ngôn ngữ đánh dấu khác
Sinh viên thực hiện: Nguyễn Văn Biểu
7
Khóa luận tốt nghiệp đại học
DANH MỤC CÁC HÌNH VẼ, SƠ ĐỒ, BIỂU ĐỒ
Sơ đồ 1.1: Kiến trúc .Net Framework. ..........................................................................15
Sơ đồ 1.2: Quá trình biên dịch trang ASP.NET ............................................................15
Sơ đồ 1.3: Mơ hình MVC cơ bản. .................................................................................16
uế
Sơ đồ 1.4: Ví trị của Entity Framework. .......................................................................23
tế
H
Sơ đồ 1. 5: Các phương pháp sử dụng entity framework. .............................................23
Sơ đồ 2.1: Cơ cấu tổ chức trường Đại học Kinh tế - Đại học Huế................................29
Sơ đồ 3.1: Sơ đồ phân rã chức năng hệ thống quản lý điểm. ........................................34
h
Sơ đồ 3.2: Sơ đồ phân rã chức năng Quản lý điểm học phần........................................35
in
Sơ đồ 3.3: Sơ đồ phân rã chức năng Quản lý điểm rèn luyện. ......................................35
Sơ đồ 3.4: Sơ đồ phân rã chức năng Quản lý điểm thi. .................................................36
cK
Sơ đồ 3.5: Sơ đồ phân rã chức năng Thống kê kết quả học tập. ...................................36
Sơ đồ 3.6: Sơ đồ ngữ cảnh hệ thống quản lý điểm của sinh viên..................................37
họ
Sơ đồ 3.7: Sơ đồ luồng dữ liệu mức 0 phần a. ..............................................................39
Sơ đồ 3.8: Sơ đồ luồng dữ liệu mức 0 phần b. ..............................................................40
Đ
ại
Sơ đồ 3.9: Các mối quan hệ giữa các thực thể. .............................................................44
Sơ đồ 3.10: Mơ hình thực thể mối qua hệ. ....................................................................44
Sơ đồ 3.11: Lược đồ cơ sở dữ liệu. ...............................................................................50
ng
Sơ đồ 3.12: Giải thuật Xem danh sách yêu cầu sửa điểm học phần..............................51
ườ
Sơ đồ 3.13: Giải thuật Nhập điểm học phần..................................................................52
Sơ đồ 3.14: Giải thuật Gửi yêu cầu sửa điểm lớp học phần. .........................................53
Tr
Sơ đồ 3.15: Giải thuật Xử lý yêu cầu sửa điểm học phần. ............................................54
Sơ đồ 3.16: Giải thuật Nhập điểm lớp học phần từ file excel. ......................................55
Sơ đồ 3.17: Giải thuật Xem danh sách yêu cầu sửa điểm rèn luyện. ............................56
Sơ đồ 3.18: Giải thuật Nhập điểm rèn luyện. ................................................................57
Sơ đồ 3.19: Giải thuật Gửi yêu cầu sửa điểm rèn luyện................................................58
Sinh viên thực hiện: Nguyễn Văn Biểu
8
Khóa luận tốt nghiệp đại học
Sơ đồ 3.20: Giải thuật Xử lý yêu cầu sửa điểm rèn luyện.............................................59
Sơ đồ 3.21: Giải thuật Nhập kết quả yêu cầu sửa điểm rèn luyện. ...............................60
Sơ đồ 3.22: Giải thuật Nhập điểm rèn luyện từ file excel. ............................................61
uế
Sơ đồ 3.23: Giải thuật Xem danh sách yêu cầu phúc khảo. ..........................................62
Sơ đồ 3.24: Giải thuật Nhập điểm thi. ...........................................................................63
tế
H
Sơ đồ 3.25: Giải thuật Gửi yêu cầu phúc khảo..............................................................64
Sơ đồ 3.26: Giải thuật Xử lý yêu cầu phúc khảo...........................................................65
Sơ đồ 3.27: Giải thuật Nhập kết quả yêu cầu phúc khảo. .............................................66
h
Sơ đồ 3.28: Giải thuật Nhập điểm thi từ file excel........................................................67
in
Hình ảnh 3.1: Giao diện chi tiết lớp truyền thống. ........................................................68
cK
Hình ảnh 3.2: Giao diện chi tiết yêu cầu sửa điểm học phần. .......................................68
Hình ảnh 3.3: Giao diện danh sách lớp học phần..........................................................69
Tr
ườ
ng
Đ
ại
họ
Hình ảnh 3.4: Giao diện thống kê kết quả học tập. .......................................................69
Sinh viên thực hiện: Nguyễn Văn Biểu
9
Khóa luận tốt nghiệp đại học
DANH MỤC BẢNG BIỂU
Bảng 3.1: Cấu trúc dữ liệu bảng SINHVIEN. ...............................................................45
Bảng 3.2: Cấu trúc dữ liệu bảng THONGTINCANHAN. ............................................45
Bảng 3.3: Cấu trúc dữ liệu bảng KHOAHOC. ..............................................................46
uế
Bảng 3.4: Cấu trúc dữ liệu bảng NAMHOC. ................................................................46
tế
H
Bảng 3.5: Cấu trúc dữ liệu bảng LOPTRUYENTHONG. ............................................46
Bảng 3.6: Cấu trúc dữ liệu bảng SINHVIENLOPTRUYENTHONG. .........................46
Bảng 3.7: Cấu trúc dữ liệu bảng LOPHOCPHAN. .......................................................47
h
Bảng 3.8: Cấu trúc dữ liệu bảng LOPHOCPHANDANGKY.......................................47
in
Bảng 3.9: Cấu trúc dữ liệu bảng HOCPHAN................................................................48
Bảng 3.10: Cấu trúc dữ liệu bảng NGANHHOC. .........................................................48
cK
Bảng 3.11: Cấu trúc dữ liệu bảng CHUYENNGANH..................................................48
Bảng 3.12: Cấu trúc dữ liệu bảng GIANGVIEN. .........................................................48
họ
Bảng 3.13: Cấu trúc dữ liệu bảng YEUCAUPHUCKHAO. .........................................48
Bảng 3.14: Cấu trúc dữ liệu bảng YEUCAUDIEUCHINHDIEMRENLUYEN. .........49
Đ
ại
Bảng 3. 15: Cấu trúc dữ liệu bảng YEUCAUSUADIEMHOCPHAN..........................50
Tr
ườ
ng
Bảng 3. 16: Bảng kí hiệu sơ đồ thuật toán.....................................................................51
Sinh viên thực hiện: Nguyễn Văn Biểu
10
Khóa luận tốt nghiệp đại học
MỞ ĐẦU
1. Lý do chọn đề tài
Tin học hóa, hiện đại hóa q trình hoạt động, quản lý của một tổ chức, đoàn
thể là nhu cầu tất yếu để nâng cao hiệu quả, tốc độ, độ chính xác và khả năng kiểm
uế
sốt. Đặc biệt với hệ thống tổ chức phức tạp, với lượng con người tham gia lớn (cả
sinh viên và cán bộ giảng viên) thì nhu cầu tin học hóa, hiện đại hóa là tất yếu và nếu
tế
H
thực hiện tốt sẽ mang lại lợi ích to lớn. Đối với việc quản lý điểm của sinh viên theo
học theo cơ chế tín chỉ tại trường Đại học Kinh tế - Đại học Huế cũng không ngoại lệ,
việc sử dụng một hệ thống quản lý tin học thay cho công tác thủ công bằng tay trong
h
những năm qua đã cho thấy rõ lợi ích của việc này.
in
Dù vậy, nhưng hệ thống hiện tại vẫn còn khá rời rạc, cịn nhiều bất cập trong
q trình hoạt động, nhiều quy trình nghiệp vụ trong hệ thống vẫn phải làm bằng tay
cK
và thông tin hiện tại chủ yếu dừng lại ở mức lưu trữ thay cho công tác lưu trữ bằng tay.
Từ đó đặt ra vấn đề là cần thiết phải có một hệ thống điểm của sinh viên tốt hơn, bổ
họ
sung các thiếu sót, cải thiện các điểm bất cập còn tồn tại trong hệ thống cũ và nâng cao
hơn hiệu quả quản lý, tạo điều kiện thuận lợi cho cả sinh viên và giảng viên đang công
tác, học tập tại trường. Do đó, tác giả đã quyết định chọn đề tài: “Xây dựng Hệ thống
Đ
ại
Quản lý điểm của sinh viên tại trường Đại học Kinh tế - Đại học Huế”.
2. Mục tiêu nghiên cứu
ng
Mục tiêu tổng quát:
Trên cơ sở hiểu rõ quy trình quản lý điểm của sinh viên tại trường Đại học Kinh
ườ
tế cũng như quy trình xây dựng phần mềm, tác giả tiến hành xây dựng hệ thống quản
lý điểm của sinh viên tại trường Đại học Kinh tế - Đại học Huế.
Tr
Mục tiêu cụ thể:
-
Xây dựng được hệ thống quản lý điểm của sinh viên tại trường Đại học
Kinh tế - Đại học Huế.
-
Sử dụng được phương pháp phân tích, thiết kế hệ thống hướng chức năng,
phương pháp lập trình hướng đối tượng trên nền tảng Microsoft .NET.
Sinh viên thực hiện: Nguyễn Văn Biểu
11
Khóa luận tốt nghiệp đại học
3. Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu:
Quy trình xây dựng hệ thống thơng tin quản lý.
-
Quy trình xây dựng, phát triển phần mềm trên nền tảng Microsoft .NET.
-
Cơ chế, cách thức hoạt động của nghiệp vụ lưu trữ, quản lý điểm của sinh viên
uế
-
tế
H
trường Đại học Kinh tế - Đại học Huế.
Phạm vi nghiên cứu:
-
Không gian: Hệ thống được xây dựng dựa trên khuôn khổ khảo sát thực tế tại
trường Đại học Kinh tế - Đại học Huế.
Thời gian: Từ ngày 10/2/2014 đến hết ngày 18/5/2014.
h
-
in
4. Phương pháp nghiên cứu
cK
Để nghiên cứu và xây dựng hệ thống quản lý điểm của sinh viên phù hợp
với yêu cầu thực tế hiện nay ở trường Đại Học Kinh Tế Huế, đề tài đã sử dụng
họ
các phương pháp trong quá trình xây dựng hệ thống:
Phương pháp phân tích thiết kế hướng chức năng.
-
Phương pháp lập trình hướng đối tượng sử dụng ASP.NET, C#.
-
Nghiên cứu tài liệu: Tra cứu tài liệu trên sách báo, mạng internet, …
-
Phỏng vấn: Hỏi đáp cán bộ quản lý, thầy cô sử dụng phần mềm hiện tại của
Đ
ại
-
trường, nhu cầu của sinh viên.
Quan sát: Quan sát quy trình vận hành, quy trình quản lý của cơng việc quản lý
ng
-
điểm của sinh viên tại trường Đại học Kinh tế - Đại học Huế.
ườ
5. Kết cấu đề tài
Tr
Phần 1: Mở đầu
Phần 2: Nội dung nghiên cứu
Chương I: Cơ sở lý luận
Chương II: Bài toán quản lý điểm của sinh viên.
Chương III: Xây dựng hệ thống quản lý điểm của sinh viên.
Phần 3: Kết luận
Sinh viên thực hiện: Nguyễn Văn Biểu
12
Khóa luận tốt nghiệp đại học
PHẦN II: NỘI DUNG NGHIÊN CỨU
CHƯƠNG 1: CƠ SỞ LÝ LUẬN
1.1. Nền tảng ứng dụng web ASP.NET
1.1.1. Giới thiệu về ASP.NET
uế
ASP.NET là một nền tảng ứng dụng web (web application framework) được
tế
H
phát triển và cung cấp bởi Microsoft, cho phép lập trình viên tạo ra những trang web
với nội dung động (dynamic web), những ứng dụng web (web application) và những
dịch vụ web (web service).
Lần đầu tiên được đưa ra thị trường vào tháng 2 năm 2002 cùng với phiên bản
h
1.0 của nền tảng .NET, là công nghệ nối tiếp của Microsoft: Active Server Pages
in
(Trang thực thi trên máy chủ). ASP được biên dịch dưới dạng Common Language
cK
Runtime (Thực thi ngôn ngữ thông dụng), cho phép người lập trình có thể viết mã
ASP.NET với bất kì ngơn ngữ nào được hỗ trợ bởi ngơn ngữ .NET.
Bên cạnh đó là một “phong cách” lập trình mới mà Microsoft đặt cho nó một
họ
cái tên rất kêu: code behind (Lập trình phía sau). Đây là kĩ thuật mà lập trình viên sử
dụng để xây dựng các ứng dụng trên nền tảng Windows thường sử dụng – giao diện và
Đ
ại
mã lệnh được tách riêng.
Sự xuất hiện của ASP.NET làm cho quá trình xây dựng ứng dụng trên Web và
trên Window trở nên cân xứng. Nó cũng cho phép chuyển một ứng dụng trước đây
ng
được viết chỉ để chạy trên Windows thành một ứng dụng web khá dễ dàng. Ví dụ các
lớp trong thư viện này là: WebControl, HTMLControl…
ườ
1.1.2. Lịch sử hình thành và phát triển
Sau khi phát hành phiên bản Internet Information Service 4.0 (Dịch vụ cung cấp
Tr
thông tin mạng toàn cầu) vào năm 1997, hãng Microsoft bắt đầu nghiên cứu một mơ
hình ứng dụng web mới để giải quyết các bất tiện của ASP, đặc biệt là việc tách riêng
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 Guthrie đượ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
Sinh viên thực hiện: Nguyễn Văn Biểu
13
Khóa luận tốt nghiệp đại học
tháng bởi Anders và Guthrie, Guthrie đã viết mã mẫu đầu tiên trong khoảng thời gian
nghĩ lễ giáng sinh năm 1997.
Từ khoảng cuối thập niên 90, ASP đã được nhiều lập trình viên lựa chọn để xây
dựng và phát triển ứng dụng web động trên máy chủ sự dụng hệ điều hành Windows.
uế
ASP đã thể hiện được những ưu điểm của mình với mơ hình lập trình thủ tục
tế
H
đơn giản, sử dụng hiệu quả các đối tượng Component Object Model (Mơ hình đối
tượng thành phần): ActiveX Data Object (Đối tượng dữ liệu thực thi) – xử lý dữ liệu,
File System Object (Đối tượng hệ thống tệp tin) – làm việc với hệ thống tập tin.
Tuy nhiên, ASP vẫn cịn tồn tại một vài khó khăn cho người lập trình như Code
h
ASP và HTML lẫn lộn, điều này làm cho q trình viết mã lệnh khó khăn, thể hiện và
in
trình bày code khơng rõ ràng, hạn chế khả năng sử dụng lại mã lệnh. Bên cạnh đó, khi
cK
triển khai cài đặt, do khơng được biên dịch trước nên rất dễ bị mất tài nguyên mã lệnh.
Ngoài ra, ASP không hỗ trợ bộ nhớ tạm, không được biên dịch trước nên phần nào hạn
chế tốc độ thực hiện. Quá trình xử lý gửi lại trang đã ghé thăm gặp khó khăn…
họ
Đầu năm 2002, Microsoft giới thiệu một kĩ thuật lập trình Web khá mới mẻ với
tên gọi ban đầu là ASP+, tên chính thức sau này là ASP.NET.
-
Đ
ại
Ưu điểm của ASP.NET
ASP.NET cho phép người lập trình lựa chọn một trong các ngơn ngữ u thích:
Tr
ườ
ng
VB.NET, C#, J#...
Sinh viên thực hiện: Nguyễn Văn Biểu
14
Khóa luận tốt nghiệp đại học
Sơ đồ 1.1: Kiến trúc .Net Framework.
-
Trang ASP.NET được biên dịch trước: Thay vì phải đọc và thông dịch mỗi khi
trang web được yêu cầu, ASP.NET biên dịch những trang web động thành
những tập tin Dynamic Linker Library (Thư viện liên kết động) mà máy chủ có
cK
in
h
tế
H
uế
thể thi hành nhanh chóng và hiệu quả.
Sơ đồ 1.2: Quá trình biên dịch trang ASP.NET
ASP.NET hỗ trợ mạnh mẽ bộ thư viện phong phú và đa dạng của .Net
họ
-
Framework, làm việc với XML, dịch vụ Web và truy cập dữ liệu qua
ADO.Net,…
ASPX và ASP.NET có thể cùng hoạt động trong một ứng dụng. Kiến trúc lập
Đ
ại
-
trình giống ứng dụng trên Windows.
ASP.NET sử dụng phong cách lập trình mới: code behind. Tách riêng phần giao
ng
diện và phần code nên làm cho code dễ đọc, dễ quản lý và bảo trì.
ườ
ASP.NET hỗ trợ quản lý trạng thái của các control, hỗ trợ nhiều cơ chế lưu nhớ
tạm. Tự động phát sinh mã HTML cho các điều khiển trên máy chủ tương ứng với
Tr
từng loại trình duyệt.
Ngồi những ưu điểm trên ASP.NET cịn các ưu điểm nổi bật như: khơng cần
khóa, khơng cần đăng ký DLL; Cho phép nhiều hình thức cấu hình ứng dụng; Hỗ trợ
quản lý ứng dụng ở mức tồn cục; tệp tin Global.aspx có nhiều sự kiện hơn; Quản lý
phiên làm việc trên nhiều máy chủ, không cần cookie.
Sinh viên thực hiện: Nguyễn Văn Biểu
15
Khóa luận tốt nghiệp đại học
1.2. Nền tảng ứng dụng web ASP.NET MVC
1.2.1. Tổng quan về nền tảng ASP.NET MVC
Mẫu kiến trúc Model – View – Controller được sử dụng nhằm chia ứng dụng
thành ba thành phần chính: tương tác cơ sở dữ liệu (model), tiếp xúc với người dùng
uế
(view) và bộ xử lý (controller) [1]. Nền tảng ASP.NET MVC giúp có thể tạo được các
tế
H
ứng dụng web áp dụng mơ hình MVC thay vì tạo ứng dụng theo mẫu ASP.NET Web
Form. Nền tảng ASP.NET MVC có đặc điểm nổi bật là nhẹ, dễ kiểm thử phần giao
diện (so với ứng dụng Web Forms), tích hợp các tính năng có sẵn của ASP.NET. Nền
tảng ASP.NET MVC được định nghĩa trong namespace “System”.Web.Mvc và là một
h
phần của namespace “System.Web”.
in
MVC là một mẫu thiết kế chuẩn mà nhiều lập trình viên đã quen thuộc. Một số
cK
loại ứng dụng web sẽ thích hợp với kiến trúc MVC. Một số khác vẫn thích hợp với
ASP.NET Web Forms và cơ chế gửi lại trang đã ghé qua. Đơi khi có những ứng dụng
Tr
ườ
ng
Đ
ại
họ
kết hợp cả hai kiến trúc trên.
Sơ đồ 1.3: Mơ hình MVC cơ bản.
Models: Các đối tượng Models là một phần của ứng dụng, các đối tượng này
thiết lập logic của phần dữ liệu của ứng dụng. Thông thường, các đối tượng model lấy
và lưu trạng thái của model trong CSDL. Ví dụ như, một đối tượng Product (sản
Sinh viên thực hiện: Nguyễn Văn Biểu
16
Khóa luận tốt nghiệp đại học
phẩm) sẽ lấy dữ liệu từ cơ sở dữ liệu (CSDL), thao tác trên dữ liệu và sẽ cập nhật dữ
liệu trở lại vào bảng Products ở máy chủ SQL.
Trong các ứng dụng nhỏ, model thường là chỉ là một khái niệm nhằm phân biệt
hơn là được cài đặt thực thụ, ví dụ, nếu ứng dụng chỉ đọc dữ liệu từ CSDL và gởi
uế
chúng đến view, ứng dụng khơng cần phải có tầng model và các lớp lien quan. Trong
tế
H
trường hợp này, dữ liệu được lấy như là một đối tượng model (hơn là tầng model).
Views: là các thành phần dùng để hiển thị giao diện người dùng. Thông thường,
view được tạo dựa vào thông tin dữ liệu model. Ví dụ như, view dùng để cập nhật
bảng Products sẽ hiển thị các hộp văn bản, danh sách đổ xuống, và các hộp chọn dựa
h
trên trạng thái hiện tại của một đối tượng Product.
in
Controllers: là các thành phần dùng để quản lý tương tác người dùng, làm việc
cK
với model và chọn view để hiển thị giao diện người dùng. Trong một ứng dụng MVC,
view chỉ được dùng để hiển thị thông tin, controller chịu trách nhiệm quản lý và đáp
trả nội dung người dùng nhập và tương tác với người dùng. Ví dụ, controller sẽ quản
họ
lý các dữ liệu người dùng gởi lên và gởi các giá trị đó đến model, model sẽ lấy dữ liệu
từ CSDL nhờ vào các giá trị này.
Đ
ại
Mẫu MVC giúp tạo được các ứng dụng mà chúng phân tách rạch ròi các khía
cạnh của ứng dụng (logic về nhập liệu, logic xử lý tác vụ và logic về giao diện). Mẫu
MVC chỉ ra mỗi loại logic kể trên nên được thiếp lập ở đâu trên ứng dụng. Logic giao
diện thuộc về views. Logic nhập liệu thuộc về controller. Và logic tác vụ – là logic xử
ng
lý thơng tin, mục đích chính của ứng dụng thuộc về model. Sự phân chia này giúp
ườ
giảm bớt được sự phức tạp của ứng dụng và chỉ tập trung vào mỗi khía cạnh cần được
cài đặt ở mỗi thời điểm. Ví dụ như chỉ cần tập trung vào giao diện mà không phải quan
Tr
tâm đến logic xử lý thông tin của ứng dụng.
Để quản lý sự phức tạp của ứng dụng, mẫu MVC giúp cho có thể kiểm thử ứng
dụng dễ dàng hơn hẳn so với khi áp dụng mẫu Web Forms. Ví dụ, trong một ứng dụng
ASP.NET Web Forms, một lớp thường được sử dụng để hiển thị thông tin xuất ra cho
người dùng và đồng thời xử lý thông tin người dùng nhập. Việc xây dựng các bộ kiểm
tra tự động cho ứng dụng Web Forms là rất phức tạp, bởi để kiểm thử mỗi trang web,
Sinh viên thực hiện: Nguyễn Văn Biểu
17
Khóa luận tốt nghiệp đại học
phải khởi tạo đối tượng trang, khởi tạo tất cả các điều khiển được sử dụng trong trang
và các lớp phụ thuộc trong ứng dụng. Và bởi vì có q nhiều lớp cần được khởi tạo để
chạy được trang, thật khó để có thể viết các kiểm thử chỉ tập trung vào một khía cạnh
nào đó của ứng dụng. Và vì thế, kiểm thử đối với các ứng dụng dứa trên nền tảng Web
uế
Forms sẽ khó khăn hơn nhiều so với khi áp dụng trên ứng dụng MVC. Hơn thế nữa,
việc kiểm thử trên nền tảng Web Forms yêu cầu phải sử dụng đến máy chủ web. Nền
tế
H
tảng MVC phân tách các thành phần và sử dụng các giao diện, và nhờ đó có thể kiểm
thử các thành phần riêng biệt trong tình trạng phân lập với các yếu tố còn lại của ứng
dụng.
h
Sự phân tách rạch ròi ba thành phần của ứng dụng MVC cịn giúp cho việc lập
in
trình diễn ra song song. Ví dụ như một lập trình viên làm việc với view, lập trình viên
thứ hai lo cài đặt logic của controller và lập trình viên thứ ba có thể tập trung vào logic
cK
tác vụ của model tại cùng một thời điểm.
1.2.2. Các tính năng của nền tảng ASP.NET MVC
họ
Tách bạch các tác vụ của ứng dụng (logic nhập liệu, logic nghiệp vụ, và logic
giao diện), dễ dàng kiểm thử và mặc định áp dụng hướng phát triển Test-Driven
Đ
ại
Development (Lập trình hướng kiểm thử). Tất cả các tính năng chính của mơ hình
MVC được cài đặt dựa trên giao diện và được kiểm thử bằng cách sử dụng các đối
tượng mô phỏng, mơ phỏng các tính năng của những đối tượng thực sự trong ứng
dụng. Có thể kiểm thử kiểm thử phần tử cho ứng dụng mà không cần chạy controller
ng
trong tiến trình ASP.NET, và điều đó giúp kiểm thử phần tử được áp dụng nhanh
chóng và tiện dụng. Có thể sử dụng bất kỳ nền tảng kiểm thử phần tử nào tương thích
ườ
với nền tảng .NET.
Tr
MVC là một nền tảng có thể mở rộng và có thể nhún. Các thành phần của
ASP.NET MVC được thiết kể để chúng có thể được thay thế một cách dễ dàng hoặc
dễ dàng tùy chỉnh. Có thể nhúng thêm động cơ view, cơ chế định tuyến cho URL, cách
kết xuất tham số của phương thức hành động và các thành phần khác. ASP.NET MVC
cũng hỗ trợ việc sử dụng Dependency Injection (chống lại sự phụ thuộc) và Inversion
of Control (Đảo ngược điều khiển). DI cho phép gắn các đối tượng vào một lớp cho
Sinh viên thực hiện: Nguyễn Văn Biểu
18
Khóa luận tốt nghiệp đại học
lớp đó sử dụng thay vì buộc lớp đó phải tự mình khởi tạo các đối tượng. IoC quy định
rằng, nếu một đối tượng yêu cầu một đối tượng khác, đối tượng đầu sẽ lấy đối tượng
thứ hai từ một nguồn bên ngồi, ví dụ như từ tập tin cấu hình. Và nhờ vậy, việc sử
dụng DI và IoC sẽ giúp kiểm thử dễ dàng hơn.
uế
ASP.NET MVC có thành phần ánh xạ URL mạnh mẽ cho phép xây dựng
những ứng dụng có các địa chỉ URL xúc tích và dễ tìm kiếm. Các địa chỉ URL khơng
tế
H
cần phải có phần mở rộng của tên tập tin và được thiết kế để hỗ trợ các mẫu định dạng
tên phù hợp với việc tối ưu hóa tìm kiếm (URL) và phù hợp với lập địa chỉ theo kiểu
REST (Representational State Transfer).
h
Hỗ trợ sử dụng đặc tả (các thẻ) của các trang ASP.NET(.aspx), điều khiển
in
người dùng (.ascx) và trang trang khn mẫu (.master). Có thể sử dụng các tính năng
có sẵn của ASP.NET như là sử dụng lồng các trang khn mẫu, sử dụng mơ tả trong
hóa và hơn thế nữa.
cK
dòng lệnh (<%= %>), sử dụng máy chủ điều khiển, mẫu, liên kết dữ liệu, địa phương
họ
Hỗ trợ các tính năng có sẵn của ASP.NET như cơ chế xác thực người dùng,
quản lý thành viên, quyền, lưu tạm dữ liệu đầu ra và lưu tạm dữ liệu, phiên làm việc và
Đ
ại
hồ sơ, quản lý tình trạng ứng dụng, hệ thống cấu hình…
ASP.NET MVC 3 cịn bổ sung một động cơ view mới là Razor cho phép thiết
lập các view nhanh chóng, dễ dàng và tốn ít cơng sức hơn so với việc sử dụng động cơ
ng
view của Web Forms.
1.2.3. So sánh lợi ích của việc lựa chọn nền tảng ASP.NET hay ASP.NET MVC
Nền tảng ASP.NET MVC mang lại những lợi ích sau:
ườ
-
Dễ dàng quản lý sự phức tạp của ứng dụng bằng cách chia ứng dụng thành ba
Tr
thành phần model, view, controller.
Nó khơng sử dụng trạng thái view hoặc biểu mẫu trên máy chủ. Điều này tốt
cho những lập trình viên muốn quản lý hết các khía cạnh của một ứng dụng.
Sinh viên thực hiện: Nguyễn Văn Biểu
19
Khóa luận tốt nghiệp đại học
Nó sử dụng mẫu Front Controller, mẫu này giúp quản lý các yêu cầu chỉ thơng
qua một Controller. Nhờ đó có thể thiết kế một hạ tầng quản lý định tuyến. Để có
nhiều thơng tin hơn, nên xem phần Front Controller trên trang web MSDN.
Hỗ trợ tốt hơn cho mơ hình phát triển ứng dụng hướng kiểm thử (TDD).
-
tế
H
viên và thiết kế mà vẫn quản lý được tính năng của ứng dụng.
uế
Nó hỗ trợ tốt cho các ứng dụng được xây dựng bởi những đội có nhiều lập trình
Lợi ích của ứng dụng được xây dựng trên nền tảng Web Forms
Nó hỗ trợ cách lập trình hướng sự kiện, quản lý trạng thái trên giao thức HTTP,
tiện dụng cho việc phát triển các ứng dụng Web phục vụ kinh doanh. Các ứng dụng
h
trên nền tảng Web Forms cung cấp hàng tá các sự kiện được hỗ trợ bởi hàng trăm các
in
điều khiển máy chủ.
cK
Sử dụng mẫu trang Controller. Xem thêm ở mục trang Controller trên MSDN.
Mơ hình này sử dụng trạng thái view hoặc biểu mẫu trên máy chủ, nhờ đó sẽ
giúp cho việc quản lý trạng thái các trang web dễ dàng.
họ
Nó rất phù hợp với các nhóm lập trình viên quy mơ nhỏ và các thiết kế, những
người muốn tận dụng các thành phần giúp xây dựng ứng dụng một cách nhanh chóng.
Đ
ại
Nói tóm lại, áp dụng Web Forms giúp giảm bớt sự phức tạp trong xây dựng ứng
dụng, bởi vì các thành phần (lớp Page, controls,…) được tích hợp chặc chẽ và thường
thì giúp viết ít code hơn là áp dụng theo mơ hình MVC.
Lựa chọn áp dụng MVC trong xây dựng ứng dụng
ng
-
Cần phải xem xét kỹ càng việc áp dụng mơ hình ASP.NET MVC hay mơ hình
ườ
ASP.NET Web Forms khi xây dựng một ứng dụng. Mơ hình MVC khơng phải là mơ
Tr
hình thay thế cho Web Forms, có thể dùng một trong hai mơ hình.
Trước khi quyết định sử dụng MVC hay Web Forms cho một trang web cụ thể,
cần phải phân tích lợi ích khi chọn một trong hai hướng.
Sinh viên thực hiện: Nguyễn Văn Biểu
20
Khóa luận tốt nghiệp đại học
1.3. ADO.NET Entity Framework
1.3.1. Khái niệm ORM
ORM là cơ chế cho phép xây dựng 1 ứng dụng(cụ thể là OOP-hướng đối tượng)
mà thao tác trên table trong database được đóng gói lại trong 1 lớp nghiệp vụ (vd:
uế
bảng “User” tương ứng với lớp “User”), và không phải quan tâm nhiều đến việc viết
tế
H
truy vấn cho mỗi lần truy xuất cơ sở dữ liệu. Kỹ thuật ORM thích hợp trong mơi
trường phát triển một hệ thống website mà trong đó cần tham gia nhiều thành viên
trong nhóm viết mã lệnh và cho các hệ thống quy mơ doanh nghiệp.
Với ORM, Có thể sử dụng với nhiều hệ quản trị cơ sở
h
dữ liệu khác nhau, nó độc lập hoàn toàn, và thường các ORM
in
trên thị trường hiện nay đều hỗ trợ nhiều hệ quản trị cơ sở dữ
cK
liệu khác nhau, chỉ cần thay đổi bộ máy tương tác là có thể
làm việc một cách nhanh chóng mà khơng cần phải thay đổi
bất kỳ dịng code nào.
họ
Một thế mạnh nữa của ORM, là có thể thao tác truy
cập, xử lý cơ sở dữ liệu một cách dễ dàng và nhanh chóng. So
Đ
ại
với cách thơng thường phải sử dụng các câu lệnh SQL để truy
vấn và xử lý dữ liệu. Nhưng với ORM, không cần phải sử
dụng SQL, mà chỉ cần thao tách, sử dụng các API đơn giản và
ng
dễ dùng của nó để truy vấn và dữ lý dữ liệu
Với ORM, không cần dùng SQL để thao tác dữ liệu, vậy thì làm sao để nó làm
ườ
việc với cơ sở dữ liệu? Đó là do nó tự động gen ra các câu lệnh SQL như thêm, sửa,
xóa, chọn dữ liệu bên dưới cơ sở dữ liệu, nên sẽ khó hoặc có thể khơng can thiệp vào
Tr
để tối ưu nó hơn. Tuy nhiên các ORM đều hỗ trợ gọi câu lệnh SQL trực tiếp trong
những tình huống cần thiết.
1.3.2. Khái niệm nền tảng LINQ (Language Integrated Query – Ngôn ngữ truy
vấn tích hợp)
LINQ là một nền tảng mở rộng mới trong .NET 3.5. Trước đây, phải viết thêm
T-SQL hoặc dùng một công cụ của hãng thứ ba để viết truy vấn trong .NET code, với
Sinh viên thực hiện: Nguyễn Văn Biểu
21
Khóa luận tốt nghiệp đại học
LINQ người dùng có thể viết những truy vấn để truy cập dữ liệu một cách tự nhiên
bằng những ngôn ngữ .NET. LINQ cũng được hỗ trợ kiểm tra cú pháp,…
LINQ cung cấp một cú pháp thống nhất để lấy dữ liệu từ bất cứ đối tượng nào
có thi hành giao diện IEnumerable: arrays, collections, dữ liệu từ cơ sở dữ liệu,
uế
XML…
tế
H
1.3.3. Tổng quan về ADO.NET Entity framework
Entity Framework là một bộ ánh xạ đối tượng – quan hệ cho phép người lập
trình .NET làm việc với dữ liệu quan hệ qua các đối tượng nó giúp lập trình viên
khơng cần viết mã cho (hầu hết) những gì liên quan đến truy cập dữ liệu. Có thể tham
h
khảo thêm tại đây.
dữ liệu.
-
Model là sơ đồ gồm các mơ hình mơ tả các thực thể và các đường nối kết mô tả
các quan hệ.
-
cK
Code là mã lệnh dùng để mô tả các lớp đối tượng dữ liệu cho phép thao tác với
họ
-
in
Trong Entity Framework:
Database là cơ sở dữ liệu (có thể là SQL Server, Compact SQL Server, Local
Tr
ườ
ng
Đ
ại
database, MySQL, Oracle,…).
Sinh viên thực hiện: Nguyễn Văn Biểu
22
Khóa luận tốt nghiệp đại học
Sơ đồ 1.4: Ví trị của Entity Framework.
Có ba cách sử dụng Entity Framework (EF): Database First (dữ liệu trước),
cK
in
h
tế
H
uế
Models First (mơ hình trước) và Code First (viết mã lệnh trước).
họ
Sơ đồ 1. 5: Các phương pháp sử dụng entity framework.
Theo khuyến cáo của Microsoft:
-
Database first: là phương pháp chỉ nên dùng khi ta đã có sẵn CSDL (database),
-
Đ
ại
EF Wizard sẽ tạo mơ hình (Model) và mã lệnh (Code) cho ta.
Model first: nên dùng khi ta bắt đầu thiết kế CSDL từ đầu (từ chưa có gì). Ta sẽ
thiết kế mơ hình (model) EF sẽ tự tạo mã lệnh (code) cho ta, sau đó nhờ EF
ng
Wizard tạo CSDL (database).
-
Code first: nên dùng khi đã có mơ hình (model), ta sẽ chỉ viết mã lệnh (code) từ
ườ
đó tạo CSDL (database).
Dù cách nào thì cuối cùng cũng phải có mã lệnh (code) để thao tác trong mã
Tr
lệnh và CSDL (database) để lưu trữ dữ liệu. Mơ hình (model) chỉ là một thành phần
trung gian. Theo kinh nghiệm của nhiều lập trình viên đi trước, Code First là phương
án mềm dẻo nhất.
Sinh viên thực hiện: Nguyễn Văn Biểu
23
Khóa luận tốt nghiệp đại học
1.4. Microsoft SQL server
1.4.1. Tổng quan về MS SQL server
SQL là một hệ thống quản trị CSDL quan hệ nhiều người dùng kiểu khách/chủ.
Đây là hệ thống cơ bản dùng lưu trữ dữ liệu cho hầu hết các ứng dụng lớn hiện nay.
uế
SQL Server sử dụng ngơn ngữ lập trình và truy vấn CSDL Transact-SQL, một
tế
H
phiên bản của SQL. Với Transact-SQL, có thể truy xuất dữ liệu, cập nhật và quản lý
hệ thống CSDL quan hệ.
Với mỗi máy chủ chỉ có một hệ thống quản trị CSDL SQL Server. Nếu muốn
1.4.2. Thành phần của MS SQL server
h
có nhiều hệ thống quản trị CSDL cần có nhiều máy chủ tương ứng.
in
Tables (bảng dữ liệu) : bảng dữ liệu là đối tượng chính của CSDL dùng lưu trữ
loại dữ liệu cần lưu trữ.
cK
dữ liệu cần quản lý. Mỗi bảng dữ liệu có 1 hay nhiều trường. Mỗi trường ứng với một
-
họ
Bảng dữ liệu cịn có các thành phần liên quan như :
Constraint – Ràng buột: Constraint là các chỉ định ràng buột dữ liệu trong bảng
dữ liệu hoặc các bảng dữ liệu khác nhau theo một quy tắc nào đó.
Triggers – Bẫy Lỗi: Bẫy lỗi thường chứa các mã lệnh kiểm tra dữ liệu, có tính
Đ
ại
-
năng tự động thực hiện khi có hành động nào đó xảy ra đối với dữ liệu trong
bảng dữ liệu như thêm, sửa, xóa.
Indexs – Chỉ mục: Hổ trợ cho việc sắp xếp và tìm kiếm nhanh thơng tin trên
ng
-
bảng dữ liệu.
ườ
Diagram – Sơ đồ quan hệ: Thể hiện mối quan hệ dữ liệu giữa các bảng dữ liệu.
Views – Khung nhìn hay bảng dữ liệu ảo: Là đối tượng dùng hiển thị dữ liệu
Tr
được rút trích, tính tốn từ các bảng dữ liệu theo nhu cầu của người dùng.
Stored Procedure – Thủ tục thường trú: Chứa các lệnh T-SQL dùng thực hiện
một số tác vụ nào đó. Thủ tục thường trú có thể nhận và truyền tham số. Thủ tục
thường trú được biên dịch trước, do đó thời gian thực hiện nhanh khi được gọi. Có
Sinh viên thực hiện: Nguyễn Văn Biểu
24