+ Một CLR header chứa các thông tin quan trọng về module như versioncủa CLR, cờ điều khiển, tài nguyên sử dụng, vị trí kích thước của metadata.+ Metadata mô tả mọi thứ bên trong module v
Trang 1Trờng đại học vinh Khoa công nghệ thông tin
- -đồ án tốt nghiệp
Đề tài
Tìm hiểu công nghệ ASP net và xây dựng
website khoa kỹ thuật công nghệ
Trờng đại học hà tĩnh
Giáo viên hớng dẫn: TS Lê Anh Ngọc
Sinh viên thực hiện : Phan Chiến Thắng
Lớp : 46E2 - CNTT
Vinh, 05/2010
Trang 2MỤC LỤC
LỜI NÓI ĐẦU……… ………….….………5
CHƯƠNG I TỔNG QUAN VỀ ĐỀ TÀI……….……… 6
1.1 Lí do chọn đề tài……… … ……….……….………… 6
1.2 Phạm vi đề tài……….… ……….….….… 6
1.3 Yêu cầu của người sử dụng Website Cổng thông tin trực tuyến…… ……… 6
1.4 Yêu cầu bên phía quản trị Website………… ……… ………7
1.5 Mô tả bài toán……….……… ……….………….7
1.5.1 Mô tả……… ……….………… ……7
1.5.2 Yêu cầu hệ thống……… ……….….…….…… 8
1.5.2.1 Đối với Quản trị Website……… ……….………8
1.5.2.2 Đối với người sử dụng……….… ………8
1.5.2.3 Đối với Sinh viên……… ……… … ……8
1.6 Mục tiêu đề ra……….…….……….…….8
CHƯƠNG II GIỚI THIỆU NGÔN NGỮ LẬP TRÌNH ASP.NET….………… 9
2.1 Giới thiệu công nghệ ASP.NET……….……….…… 9
2.1.1 Công nghệ Net (Dot net)……….……….……… 9
2.1.3 Sự khác nhau giữa Website tĩnh và Website động ….….……….….……10
2.1.3 Giới thiệu ngôn ngữ lập trình ASP.NET……… ………… ……11
2.1.3.1 Tìm hiểu về ASP.Net……… ………….……….………11
2.1.3.2 Những ưu điểm của ASP.Net……… 12
2.2 Giới thiệu Hệ quản trị cơ sở dữ liệu SQL Server 2005……… ……….13
2.2.1 Các tính năng cao cấp của SQL Server 2005……….…………15
CHƯƠNG III PHÂN TÍCH HỆ THỐNG……… ……21
Trang 33.1 Phân tích hệ thống về chức năng……… ………….……….……21
3.1.2 Biểu đồ phân cấp chức năng………21
3.1.3 Biểu đồ luồng dữ liệu mức khung cảnh……….……… 22
3.1.4 Biểu đồ luồng dữ liệu mức đỉnh……… ………….……… 23
3.1.4.1 Phân rã chức năng Quản lý Nội dung……… 23
3.1.4.2 Phân rã chức năng Quản lý Liên hệ……….………….24
3.1.4.3 Phân rã chức năng Quản lý Sinh viên……….……… 25
3.1.4.4 Phân rã chức năng Quản lý Khoa……….……….26
3.1.5 Biểu đồ luồng dữ liệu mức dưới đỉnh……….27
3.1.5.1 Phân rã chức năng quản lý Nội dung……….…………27
3.1.5.2 Phân rã chức năng quản lý liên hệ……… …………28
3.1.5.3 Phân rã chức năng quản lý Sinh viên……….………29
3.1.5.4 Phân rã chức năng quản lý Khoa……….……….…… 30
3.2 Phân tích hệ thống về dữ liệu……….… … ……….31
3.2.1 Thiết kế các bảng dữ liệu……….………….…… ……….31
3.2.1.1 Bảng lưu trữ dữ liệu TblCategory……….……….31
3.2.1.2 Bảng lưu trữ dữ liệu TblSubCategory……….….… 31
3.2.1.3 Bảng lưu trữ dữ liệu TblArticle……….……….…32
3.2.1.4 Bảng lưu trữ dữ liệu TblTeacher……….……… 32
3.2.1.5 Bảng lưu trữ dữ liệu TblStudent……….…………33
3.2.1.6 Bảng lưu trữ dữ liệu TblClass……… ………… 33
3.2.1.7 Bảng lưu trữ dữ liệu TblContacts……….… ……….34
3.2.1.8 Bảng lưu trữ dữ liệu TblMessage……… ……… ………… 34
3.2.1.9 Bảng lưu trữ dữ liệu TblGallery……….… …………35
3.2.1.10 Bảng lưu trữ dữ liệu TblTeam……….… ………35
Trang 43.3 Sơ đồ Website……….………….………….……….36
3.4 Các thực thể : ……… ……….……….37
3.5 Sơ đồ liên kết thực thể……… ………40
CHƯƠNG IV THIẾT KẾ……….……… 42
A GIAO DIỆN QUẢN TRỊ ……… ……….……… 42
4.1 Giao diện chính……….……… 42
4.2 Giao diện Chuyên mục chính……… ….………42
4.3 Giao diện Chuyên mục con……… 44
4.4 Giao diện cập nhật chuyên mục……….….…… ……44
4.5 Giao diện bài viết……… ………45
4.6 Giao diện cập nhật bài viết……….……….….46
4.7 Giao diện liên hệ……… ………….47
4.8Giao diện lớp……….………47
4.9 Giao diện Sinh viên……… …….…….48
4.10 Giao diện tổ bộ môn……….…… ………49
4.11 Giao diện quản lý hình ảnh……….…….…… 49
4.12 Giao diện cập nhật giáo viên……….………….50
B.GIAO DIỆN NGƯỜI DÙNG……….51
4.13 Giao diện Trang chủ……… 51
4.14 Giao diện giới thiệu………52
4.15 Giao diện liên hệ……….52
CHƯƠNG V TỔNG KẾT……….… …… 53
5.1 Những việc đã làm được……… ………….…………53
5.2 Những việc chưa làm được ……… ………… ……….53
5.3 Hướng phát triển……… ………54
Trang 6LỜI NÓI ĐẦU
Công nghệ thông tin là một trong những ngành mũi nhọn của đất nước Hàngnăm nguồn nhân lực Công nghệ thông tin đào tạo ra luôn đáp ứng được số lượng lớncác yêu cầu của xã hội về nhiều mặt như : Kinh tế, văn hóa, xã hội Do đó, việc ứngdụng rộng rãi của ngành công nghệ thông tin trong xã hội là điều tất yếu
Từ khi Internet ra đời, kéo theo đó là sự bùng nổ thông tin trên Internet, mộtloạt các dịch vụ trên Internet đã khiến cuộc sống của con người trở nên thú vị hơn,khoảng cách địa lý không còn là vấn đề gây khó khăn Những lợi ích mà Internetmạng lại là rất lớn Trong đó Website là một trong những dịch vụ phổ biến nhất trênInternet hiện nay
Trước tình hình đó tôi chọn đề tài xây dựng website, nhằm phục vụ nhu cầucủa những người có mong muốn tìm hiểu về khoa Kỹ thuật - công nghệ Trường Đạihọc Hà Tĩnh
Tôi xin gửi lời cảm ơn chân thành đến thầy giáo hướng dẫn TS Lê Anh Ngọc đãgiúp đỡ và hướng dẫn tôi hoàn thành đề tài này
Dù đã cố gắng nhưng không thể tránh sai sót tôi rất mong nhận được sự giúp
đỡ và đóng góp của các quý thầy cô, các anh chị cùng toàn thể các sinh viên
Trang 7Vinh, Tháng 05 Năm 2010.
CHƯƠNG I TỔNG QUAN VỀ ĐỀ TÀI
1.2 Phạm vi đề tài
Vì bắt đầu làm quen với lập trình web nên đề tài còn nhiều hạn chế chưa liênkết được rộng rãi, chỉ nằm trong một phạm vi hẹp
1.3 Yêu cầu của người sử dụng Website Cổng thông tin trực tuyến
Trong thời đại CNTT hiện nay, tin tức xã hội đóng một vai trò vô cùng quan
trọng Bằng việc cung cấp kịp thời, nhanh chóng và chính xác các tin tức xảy rahàng ngày về nhiều lĩnh vực như : Xã hội, văn hóa, chính trị, pháp luật, thể thao v vcác cổng thông tin điện tử đã thật sự trở thành nhu cầu thiết yếu của xã hội Khôngchỉ phục vụ nhu cầu tìm kiếm thông tin mà cổng thông tin điện tử còn đem lại rất
Trang 8nhiều kiến thức bổ ích cho con người bằng việc chia sẻ kiến thức khổng lồ lênInternet.
Đối với người sử dụng, để tìm kiếm được thông tin có ích cho bản thân mìnhthì đòi hỏi Website phải đáp ứng được về mặt thẩm mỹ, giao diện dễ sử dụng, tin tứcđưa lên phải chính xác, kịp thời và đầy đủ cả về nội dung lẫn hình ảnh Mặt khác,tính tương tác hai mặt của Cổng thông tin điện tử phải được nâng cao nhằm thu thậpđược nhiều ý kiến và nguyện vọng của người sử dụng về những nội dung, chủ đề màWebsite đưa ra
1.4 Yêu cầu bên phía quản trị Website
Cổng thông tin điện tử đòi hỏi độ chính xác cao trong mỗi bản tin đưa lên, vìvậy yêu cầu đối với quản trị website là phải cung cấp công cụ đủ mạnh để quản lýcác bài viết, các chuyên mục và hình ảnh hiển thị trên website Đồng thời, song songvới việc đảm bảo về nội dung, quản trị website còn cần phải đảm bảo sự an toàn cho
hệ thống bằng việc bảo mật thông tin
1.5 Mô tả bài toán
1.5.1 Mô tả
Các chức năng của Website khoa Kỹ thuật công nghệ:
Quản lý các chuyên mục về các lĩnh vực và nội dung có trong mỗichuyên mục đó
Cập nhật các tin tức lên Website
Khi người dùng xem các bài viết cần phải có mục tìm kiếm để ngườidùng dễ dàng tìm thấy nội dung cần tìm
Hệ thống cho phép đăng các hình ảnh lên website và quản lý các hìnhảnh đó
Quản lý các thông tin phản hồi, thông tin liên hệ của người dùng
Trang 9 Trình bày tin tức hợp lý với các chuyên mục được sắp xếp logic
Quản lý thông tin về các tổ bộ môn
Quản lý thông tin các cán bộ
Quản lý thông tin các lớp học
Quản lý thông tin các sinh viên theo từng lớp
4 Quản lý các thông tin phản hồi, liên hệ của khách hàng
5 Quản lý thông tin về tổ bộ môn, giáo viên
6 Quản lý thông tin về lớp học và sinh viên theo từng lớp
7 Cập nhật tin tức dành riêng cho các sinh viên
8 Tạo các tài khoản sinh viên cho phép đăng nhập để xem tin tức
1.5.2.2 Đối với người sử dụng
1 Xem các bài viết mới nhất được đăng trên Website
2 Tìm kiếm thông tin về một bài viết bất kỳ
3 Gửi phản hồi, liên hệ
1.5.2.3 Đối với Sinh viên
1 Xem các bài viết mới nhất được đăng trên Website
2 Tìm kiếm thông tin về một bài viết bất kỳ
3 Gửi phản hồi, liên hệ
Trang 104 Đăng nhập để xem thông tin của khoa bằng tài khoản được cấp
1.6 Mục tiêu đề ra
Về mặt lý thuyết:
Nắm được cơ sở lý thuyết chung về xây dựng cổng thông tin điện tử
Hiểu rõ quy trình thiết kế một Cổng thông tin điện tử
2.1 Giới thiệu công nghệ ASP.NET
2.1.1 Công nghệ Net (Dot net)
Cấu trúc Net Framework:
Net Framework là nền tảng cung cấp các tiện nghi cho việc xây dựng và chạy
các ứng dụng Các thành phần chính: CLR (common language runtime), FCL (.Net
Framework Class Library)
Trong đó: CLR trừu tượng hóa các dịch vụ của hệ điều hành đóng vai trò thực thi các ứng dụng mà nó quản lý FCL cung cấp API hướng đối tượng để viết các ứng
dụng Net bằng FCL thay vì Window API, MFC, ATL, COM, v.v…
Managed module:
Khi xây dựng ứng dụng với trình biên dịch sản sinh mã CIL, nó sẽ tạo ra các
managed module Đó là các file thực thi được thiết kế để chạy trong CLR Thông
thường chúng có phần mở rộng là EXE, DLL hoặc NETMODULE
Bên trong một managed module có 4 yếu tố quan trọng:
+ Một header của file thực thi trên Windows;
Trang 11+ Một CLR header chứa các thông tin quan trọng về module như versioncủa CLR, cờ điều khiển, tài nguyên sử dụng, vị trí kích thước của metadata.+ Metadata mô tả mọi thứ bên trong module và các phần phụ thuộc bênngoài: các kiểu dữ liệu, các hàm, các object được định nghĩa trong code và cáctài nguyên DLL, COM hay managed module khác được tham chiếu đến.
+ Các chỉ lệnh IL (Intermediate Language) được sản sinh từ mã nguồn saukhi chúng ta biên dịch mã nguồn IL sau đó sẽ được CLR biên dịch một lầnnữa ra mã máy (mã Assembly)
Mỗi managed module chứa siêu dữ liệu (metadata) mô tả nội dung module.
Mọi trình biên dịch tương thích CLR đều tạo ra metadata trong module
Metadata:
Metadata của một module được lưu trong một tập các bảng: bảng chứa các
phương thức được thừa kế bởi các kiểu này, bảng liệt kê các trường, bảng liệt kê cácthuộc tính, v.v Một số bảng liệt kê các tham chiếu đến các kiểu dữ liệu bên ngoàimodule, các assembly chứa các kiểu dữ liệu bên ngoài, v.v
Các thông tin metadata phụ được lưu trữ bên ngoài các bảng trong vùng heapchứa các mục tham chiếu bởi các thực thể bảng
Common Intermediate Language (CIL):
CIL thường được mô tả như một ngôn ngữ mô phỏng assembly bởi nó định
nghĩa một tập hợp các chỉ lệnh trung gian cho bộ xử lý CLR
CIL có khoảng 100 chỉ lệnh, đóng vai trò trung gian giữa các ngôn ngữ C#,
VB.Net, Visual C++, J#, … Các managed module là kết quả của việc biên dịch từcác ngôn ngữ này sang CIL .Net có sẵn công cụ ILDASM để trình bày cho người sửdụng nội dung của một module dạng CIL
Assembly:
Trang 12Assembly là tập hợp một hoặc nhiều file được nhóm với nhau để hình thành
một đơn vị về logic và các file phải nằm trong cùng một thư mục
Các assembly còn được dùng để phân chia ứng dụng thành các phần rời rạc để
tiện download
2.1.2 Sự khác nhau giữa Website tĩnh và Website động
Website tĩnh là: Website tĩnh thường bị nhầm lẫn với website không có nhữnghình ảnh động thay đổi, thực chất website tĩnh là những trang văn bản (có thể baogồm cả hình ảnh và âm thanh) được gắn kết với nhau có hệ thống
Khuyết điểm:
Thay đổi thông tin khó khăn (mất nhiều thời gian và đòi hỏi có một số kỹnăng sử dụng html, phần mềm ftp) Do không có mã lệnh lập trình vì vậy việc cậpnhật, thay đổi nội dung thông tin của website mang nặng tính thủ công nên cần nhiềuthời gian
Số lượng các trang thông tin theo lý thuyết là không giới hạn nhưng với sốtrang càng lớn càng tốn nhiều thời gian chẳng hạn cần thêm một trang thông tin thìphải sửa tất cả những trang còn lại
Website động là: website động có nghĩa là một website tĩnh được "ghép" vớimột phần mềm web (các modules ứng dụng cho Web) Với chương trình phần mềmnày, người chủ website thực sự có quyền điều hành nó, chỉnh sửa và cập nhật thôngtin trên website của mình mà không cần phải nhờ đến những người chuyên nghiệp
Ưu điểm:
Người quản trị dễ dàng thay đổi cập nhật thông tin bất cứ lúc nào một cáchđơn giản gần như tất cả những người dùng Iternet đều có thể làm được
Trang 13Có thực hiện những vấn đề phức tạp có thể là tính hóa đơn, quản lý đơn hàng,thanh toán online, so sánh, tìm kiếm sản phẩm theo yêu cầu cụ thể
Số lượng các trang phụ thuộc vào số lượng thông tin mà khách hàng cập nhậtcác trang này sẽ tự động phát sinh theo các mục tương ứng và có liên kết với nhau
2.1.3 Giới thiệu ngôn ngữ lập trình ASP.NET
2.1.3.1 Tìm hiểu về ASP.Net.
Từ khoảng cuối thập niên 90, ASP (Active Server Page) đã được nhiều lậptrì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 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 đơn giản, sử dụng hiệu quảcác đối tượng COM: ADO(ActiveX Data Object) - xử lý dữ liệu, FSO (File System Object) - làm việc với hệthống tập tin…, đồng thời, ASP cũng hỗ trợ nhiều ngôn ngữ: VBScript, JavaScript.Chínhnhững ưu điểm đó, ASP đã được yêu thích trong một thời gian dài.Tuy nhiên,ASP vẫn còn tồn đọng một số khó khăn như Code ASP và HTML lẫn lộn, điều nàylàm cho quá trình viết code khó khăn, thể hiện và trình bày code không trong sáng,hạn chế khả năng sử dụng lại code Bên cạnh đó, khi triển khai cài đặt, do khôngđược biên dịch trước nên dễ bị mất source code, hạn chế về mặt tốc độ thực hiện.Quá trình xử lý Postback khó khăn, …
Đầ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 Với ASP.Net,không những không cần đòi hỏi người dùng phải biết các tag HTML, thiết kế web,
mà nó còn hỗ trợ mạnh lập trình hướng đối tượng trong quá trình xây dựng và pháttriển ứng dụng Web ASP.Net là kỹ thuật lập trình và phát triển ứng dụng web ởphía Server (Server-side) dựa trên nền tảng của Microsoft Net Framework Hầu hết,những người mới đến với lập trình web đều bắt đầu tìm hiểu những kỹ thuật ở phía
Trang 14Client(Client-side) như: HTML, Java Script, CSS (Cascading Style Sheets) KhiWeb browser yêu cầu một trang web (trang web sử dụng kỹ thuật client-side), Webserver tìm trang web mà Client yêu cầu, sau đó gởi về cho Client Client nhận kếtquả trả về từ Server và hiển thị lên màn hình ASP.Net sử dụng kỹ thuật lập trình ởphía server thì hoàn toàn khác, mã lệnh ở phía server (ví dụ:mã lệnh trong trangASP, ASP.NET) sẽ được biên dịch và thi hành tại Web Server Sau khi được Serverđọc,biên dịch và thi hành, kết quả tự động được chuyển sang HTML/JavaScript/CSS
và trả về cho Client Tất cả các xử lý lệnh ASP, ASP.Net đều được thực hiện tạiServer và do đó, gọi là kỹ thuật lập trình ở phía server
2.1.3.2 Những ưu điểm của ASP.Net
ASP.Net cho phép người dùng lựa chọn một trong các ngôn ngữ lập trình màbạn yêu thích: Visual Basic.Net, J#, C#,…
Trang ASP.Net được biên dịch trước thành những tập tin DLL mà Server cóthể thi hành nhanh chóng và hiệu quả Yếu tố này là một bước nhảy vọt đáng
kể so với kỹ thuật thông dịch của ASP
ASP.Net hỗ trợ mạnh mẽ bộ thư viện phong phú và đa dạng của .NetFramework, làm việc với XML, Web Service, truy cập cơ sở dữ liệu quaADO.Net, …
ASPX và ASP có thể cùng hoạt động trong 1 ứng dụng
ASP.Net sử dụng phong cách lập trình mới: Code behide Tách code riêng,giao diện riêng
Dễ đọc, dễ quản lý và bảo trì
Kiến trúc lập trình giống ứng dụng trên Windows
Hỗ trợ quản lý trạng thái của các control
Trang 15 Tự động phát sinh mã HTML cho các Server control tương ứng với từng loạiBrowser
Triển khai cài đặt
Không cần lock, 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 toàn cục
Global.aspx có nhiều sự kiện hơnBài Giảng Môn Lập Trình Website ASP.Net
Quản lý session trên nhiều Server, không cần Cookies
2.2 Giới thiệu Hệ quản trị cơ sở dữ liệu SQL Server 2005
Hệ quản trị cơ sở dữ liệu là phần mềm cho phép định nghĩa, khởi tạo, bảo trì
cơ sở dữ liệu và cung cấp các truy xuất điều khiển đến dữ liệu
Hệ quản trị cơ sở dữ liệu quan hệ là hệ quản trị dữ liệu dựa trên mô hình dữ
liệu quan hệ.
Microsoft SQL Server 2005 là công cụ thiết kế và xây dựng cơ sở dữ liệu cótính thực thi cao, được trải nghiệm qua nhiều phiên bản nhằm đem lại sự tối ưu.Những người phát triển ứng dụng, những người quản lý cơ sở dữ liệu, những nhàphân tích và thiết kế hệ thống và tất cả những ai quan tâm đến việc thiết kế, pháttriển, bảo lưu và quản lý các trình ứng dụng đều có thể sử dụng công cụ này
Sử dụng SQL Sever giúp chúng ta có thể thao tác với cơ sở dữ liệu, chèn, xoá,cập nhật thêm những bản ghi vào CSDL
Các thành phần quan trọng của SQL Server 2005
- Relational Database Engine: - Cái lõi của SQL Server
Trang 16Ðây là engine có khả năng chứa data với các quy mô khác nhau dưới dạng
table và hỗ trợ tất cả các kiểu kết nối dữ liệu thông dụng của Microsoft ActiveXData Objects - ADO, Open Database Connectivity - ODBC,…
- Replication - Cơ chế tạo bản sao (Replicate)
Cơ chế Replication của SQL Server sẽ bảo đảm cho dữ liệu ở 2 database được
đồng bộ (synchronized)
- Data Transformation Service (DTS) - chuyển dịch dữ liệu hiệu quả
Giúp di chuyển dữ liệu giữa các server hiệu quả và định dạng trước khi lưuvào database khác, khi đó ta sẽ thấy DTS giúp giải quyết công việc một cách dễdàng
- Analysis Service - dịch vụ phân tích dữ liệu của Microsoft
- SQL Server Tools - một công cụ của người quản trị cơ sở dữ liệu
Các công cụ đó bao gồm:
Enterprise Manager
Query Analyzer
SQL profiler
2.2.1 Các tính năng cao cấp của SQL Server 2005
Tính năng 1 Nâng cao bảo mật:
Bảo mật là trong tâm chính cho những tính năng mới trong SQL Server 2005 Điều này phản ánh sự phản ứng lại của Microsoft với sâu máy tính Slammer đã tấn công SQL Server 2000 Nó cũng cho thấy một thế giới ngày càng có nhiều dữ liệu kinh doanh có nguy cơ bị lộ ra ngoài Internet
a, Bảo mật nhóm thư mục hệ thống:
Nhóm mục hệ thống bao gồm các View bên dưới cấu trúc dữ liệu hệ thống
Trang 17Người sử dụng không thấy được bất cứ bảng bên dưới nào, vì thế những người dùng không có kỹ năng hoặc có ý phá hoại không thể thay đổi hoặc làm hư hỏng các bảng này được Điều này ngăn bạn hoặc bất kỳ ai khác làm hỏng cấu trúc chính mà SQL Server phụ thuộc vào.
b, Bắt buộc chính sách mật khẩu:
Khi người dùng cài Window Server 2003, người có thể áp dụng chính sách mật khẩu của Window (người dùng đang áp dụng) cho SQL Server 2005 Người dùng có thể thi hành chính sách về mức độ và ngày hết hạn của mật khẩu trên SQL Server 2005 giống hệt như cho tài khoản đăng nhập vào Windows mà trong 2000 không hỗ trợ tính năng này Người dùng có thể tắt hoặc mở việc bắt buộc chính sáchmật khẩu cho từng đăng nhập riêng
c, Tách biệt giản đồ và người dùng:
SQL Server 2000 không có khái niệm giản đồ (Schema): Người dùng sở hữu các đối tượng CSDL Nếu một người dùng User1 tạo một đối tượng là myTable thì tên của đối tượng sẽ là User1.myTable Nếu User1 bị xóa khi một nhân viên rời khỏicông ty chẳng hạn, người dùng cần thay đổi tên của đối tượng Việc này gây ra vấn
đề với những ứng dụng phụ thuộc vào tên của đối tượng để truy xuất dữ liệu
Trong SQL Server 2005, người dùng có thể tạo giản đồ có tên khác với người dùng để chứa các đối tượng CSDL Ví dụ User1 có thể tạo giản đồ có tên là HR và tạo một đối tượng Employee Người dùng tham chiếu đến đối tượng đó như là
HR.Employee Vì thế nếu User1 rời khỏi công ty, người dùng không cần thay đổi tên giản đồ, nghĩa là mã ứng dụng vẫn được giữ nguyên bởi vì đối tượng vẫn được
gọi là HR.Employee
d, Tự động tạo chứng nhận cho SSL:
Trong SQL Server 2000, khi người dùng dùng Secure Sockets Layer (SSL) để
Trang 18đăng nhập vào thể hiện SQL Server, người dùng phải tạo chứng nhận để làm cơ sở
sử dụng SSL SQL Server 2005 tự tạo chứng nhận cho người dùng, điều đó cho phépngười dùng sử dụng SSL
Tính năng 2 Mở rộng T-SQL:
Transact - SQL là một phiên bản của Structured Query Language (SQl), được dùng bởi SQL Server 2005 Transact-SQL thường được gọi là T-SQL T-SQL có nhiều tính năng do Microsoft phát triển không có trong ANSI SQL (SQL chuẩn)
Cải tiến khả năng hỗ trợ XML: SQL Server 2000 cho phép người dùng nhận
dữ liệu quan hệ ở dạng XML với mệnh đề FOR XML, hoặc lưu trữ XML như dữ liệu quan hệ trong SQL Server sử dụng mệnh đề OPEN XML SQL Server 2005 có thêm một kiểu dữ liệu mới là XML cho phép người dùng viết mã nhận dữ liệu XML như là XML, tránh việc biến đổi từ XML thành dữ liệu quan hệ khi dùng OPEN XML Người dùng cũng có thể dùng tài liệu giản đồ biểu diễn trong ngôn ngữ W3C XML Schema Definition (đôi khi gọi là giản đồ XSD) để chỉ ra cấu trúc hợp lệ trongXML
Việc sử dụng khối Try Catch trong mã T-SQL cho phép người dùng chỉ ra điều gì phải làm khi lỗi xảy ra
Trong SQL Server management Studio, người dùng có thể tìm thấy nhiều đoạn mã mẫu giúp người dùng thực hiện những tác vụ thường gặp với T-SQL Để xem các mẫu này, người dùng chọn trình đơn View > Template Explorer
Tính năng 3 Tăng cường hỗ trợ người phát triển:
a, Hỗ trợ cho Common Language Runtime (CLR):
CLR được dùng bởi mã NET, được nhúng vào trong cỗ máy CSDL SQL Server 2005 Người dùng có thể viết các thủ tục lưu sẵn, trigger, hàm, tính toán tập hợp và các kiểu dữ liệu do người dùng định nghĩa bằng cách sử dụng các ngôn ngữ như VB.NET hoặc C#
Thử tục lưu sẵn được viết bằng ngôn ngữ NET là một thay thế tốt cho thủ tục lưu sẵn mở rộng trong SQL Server 2000 bởi vì người dùng có thể chỉ ra mức độ bảo
Trang 19mật cho mã NET Có 3 mức độ bảo mật cho mã NET:
+ An Toàn: Mức độ này không cho phép truy cập ngoài phạm vi SQL Server Mã của ngngfừi dùng không được phép truy cập hệ thống tập tin, registry, các biến môi trường hoặc mạng Đây là mức bảo mật cao nhất
+ Truy xuất mở rộng: Mức độ này cho phép mã của người dùng truy xuất
có giới hạn ra ngoài phạm vi SQL Server Cụ thể là người du có thể truy xuất
registry, hệ thống tập tin, các biến môi trường hoặc mạng
+ Không an toàn: Ở mức độ này người dùng có thể truy xuất bất kỳ chức năng mong muốn nào ngoài phạm vi SQL Server 2005 Người dùng chỉ nên dùng mức độ bảo mật này nếu chắc chắn mã được viết tốt, và người dùng tin cậy người viết mã đó
b, Các kiểu dữ liệu mới:
Varchar(max): Kiểu này cho phép người dùng dùng chuỗi kí tự lớn hơn 8000 byte (8000 kí tự) Tối đa là 2 GB
Nvarchar(max): Kiểu này cho phép người dùng dùng chuỗi kí tự Unicode lớn hơn 8000 byte (4000 kí tự) Tối đa là 2 GB
Varbinary(max): kiểu này cho phép người dùng dùng dữ liệu nhị phân lớn hơn 8000 byte
c, SQL Management Object (SMO):
SMO thay thế cho Distributed Management Objects (DMO) được dùng trong SQL Server 2000 SMO nhanh hơn DMO ở nhiều thiết lập bởi vì mỗi đối tượng chỉ được thực hiện từng phần Ví dụ, người dùng muốn liệt kê một danh sách hàng ngàn đối tượng lên tree view (Cấu trúc hình cây), người dùng không cần nạp đầy đủ thôngtin của đối tượng ngay một lần Ban đầu người dùng chỉ cần hiển thị tên của đối tượng, khi nào cần thì mới nạp đầy đủ thông tin của đối tượng đó Điều này giúp cácngười dùng tiết kiệm được nhiều thời gian cho các tác vụ đơn giản
d, Tự động thực thi mã kịch bản:
Nếu người dùng đã dùng các chương trình của Microsoft như Microsoft
Access, Excel, người dùng biết rằng có thể tạo các macro (mã thực thi) cho phép
Trang 20người dùng thực hiện tự động một số tác vụ nào đó SQL Server 2005 bây giờ có tính năng tự động tạo mã kịch bản T-SQL từ những hành động mà người dùng dùng gian diện hình ảnh trong SQL Server Management Studio.
e, Truy cập Http:
Dùng giao thức HTTP để truy cập vào SQL Server 2005 là tính năng mới cho phép người lập trình truy cập vào SQL Server mà không phụ thuộc vào việc IIS có đang chạy trên cùng máy hay không SQL Server có thể cùng tồn tại với IIS nhưng không giống với SQL Server 2000, IIS không còn là yêu cầu bắt buộc với SQL Server 2005 Truy cập HTTP cho phép phát triển dùng XML Web Service với SQL Server 2005 Truy cập HTTP có thể thực thi nhóm lệnh T-SQL hoặc thủ tục lưu sẵn Tuy nhiên, vì lí do bảo mật truy cập HTTP mặc định sẽ bị vô hiệu hóa Để sử dụng truy cập HTTP người dùng phải chỉ rõ người dùng, thủ tục lưu sẵn và CSDL được phép hỗ trợ nó
Tính năng 4 Tăng cường khả năng quản lý:
Các công cụ quản lý trong SQL Server 2005 có sự thay đổi rất lớn so với SQL Server 2000 Thay đổi chính đến từ SQL Server management Studio
a, Những công cụ quản lý mới:
Trong SQL Server 2000, công cụ quản lý chủ yếu là Enterprise Manager và Query Analyzer SQL Server 2005, Với công cụ quản lý mới là SQL Server
Management Studio đã thay thế hoàn toàn 2 công cụ trên của SQL 2000 Công cụ này cho phép người dùng quản lý nhiều thể hiện SQL Server dễ dàng hơn Từ một giao diện, người dùng có thể quản lý nhiều thể hiện của cỗ mãy CSDL SQL Server, Analysis Services, Intergration Services và Reporting Services
Công cụ mới SQL Server Configuration Manager cho phép bạn kiểm soát các dịch vụ kết hợp với SQL Server 2005 Nó có thể thay thế cho Services Manager và công cụ cấu hình mạng cho Server và Client Người dùng cũng có thể kiểm soát một
số dịch vụ khác như: SQL Server, SQL Agent, SQL Server Analysis Services, DTS
Trang 21Server (Cho SQL Server Integration Services), Full - Text Search, SQL Browser.
b, Profiler:
Cho phép người dùng phân tích những vấn đề về hiệu suất thực thi trong SQL Server 2005 Ví dụ, Profiler mở các tập tin truy vết mà người dùng đã lưu trong hệ thống tập tin để người dùng xem lại và phân tích các quá trình SQL Server mà ngườidùng quan tâm Profiler có thể biểu diễn thông tin truy vết ở dạng đồ thị để người dùng có thể dễ dàng xem điều gì đã xảy ra Nó có thể nhận dữ liệu được ghi lại bởi Windows Performance Monitor Người dùng có thể hiển thị dữ liệu dạng đồ thị, , xem hiệu suất thực thi trên khoảng thời gian đã chọn Từ đồ thị, người dùng có thể truy cập đến điểm có vấn đề
c, SQL Server Agent:
Những khả năng của SQL Server Agent, thành phần hỗ trợ cho các tác vụ đã được lập thời gian biểu, được nâng cao ví dụ, số tác vụ đồng thời mà SQL Server Agent có thể chạy được tăng lên SQL 2000 chỉ dùng SQL Agent trong những tác vụliên quan đến cỗ máy CSDL còn trong 2005, SQL Server Agent thực thi các tác vụ cho Analysis Services và Integration Services SQL Server Agent dùng Windows Management Instrumentation (WMI), cho phép người dùng viết mã tránh thực thi tác vụ, như khi đĩa cứng đầy thì các tác vụ vẫn được thực thi thành công
d, Cấu hình động:
Trong SQL Server 2005, người dùng có thể thực hiện bất kì Thay đổi cấu hìnhnào mà không cần khởi động lại SQL Server, kể cả khi người dùng đang chạy trên Windows Server 2003 Bên cạnh đó, người dùng cũng có thể thay đổi áp lực CPU vàI/O nếu người dùng cần, có thể thêm nóng bộ nhớ cho Server nếu bạn có phần cứng thích hợp
e, Gửi mail từ CSDL:
Trang 22Đây là tính năng khá mới mẻ trong SQL Server 2005 Nó thay thế SQL Mail trong SQL Server 2000 Database Mail sử dụng giao thức Simple Mail Transfer Protocol (SMTP) Không còn bất kỳ phụ thuộc nào với Messaging Application Programming Interface(MAPI) và cũng không còn đòi hỏi phải có Outlook Việc loại bỏ những phụ thuộc này tránh được hiều vấn đề mà người dùng SQL Server
2000 gặp phải với SQL Mail Ngoài ra, Database Mail cũng hỗ trợ hoạt động liên tiếp, ghi tập tin Log và kiểm tra hoạt động.
CHƯƠNG III.
PHÂN TÍCH HỆ THỐNG
Trang 23Cập nhật TK
Quản lý Khoa
Cập nhật CB Cập nhật TBM
Trang 243.1.3 Biểu đồ luồng dữ liệu mức khung cảnh
Chú thích :
(1) : Đăng nhập
(2) : Tin tức nội bộ dành cho sinh viên
(3) : Tra cứu thông tin
(4) : Kết quả tra cứu
(5) : Thông tin cập nhật chuyên mục, bài viết, tài khoản
Người dùng
(3)
(4)
Trang 253.1.4 Biểu đồ luồng dữ liệu mức đỉnh
3.1.4.1 Phân rã chức năng Quản lý Nội dung
Quản trị
(1)
(2) (3)
Trang 263.1.4.2 Phân rã chức năng Quản lý Liên hệ
Chú thích :
(1) : Tìm kiếm liên hệ khách hàng
(2) : Thông tin liên hệ của khách hàng
(3) : Các ý kiến phản hổi của khách hàng
(4) : Kết quả gửi ý kiến phản hồi
(5) : Đáp ứng yêu cầu của người dùng
(6) : Cập nhật thông tin người dùng
Qu¶n lý liªn hÖ
(6)
Trang 273.1.4.3 Phân rã chức năng Quản lý Sinh viên
Chú thích :
(1) : Tra cứu tài khoản sinh viên
(2) : Tài khoản sinh viên
(3) : Đăng nhập và tra cứu tin tức
Qu¶n lý Sinh viªn
Trang 28 (4) : Kết quả tra cứu
3.1.4.4 Phân rã chức năng Quản lý Khoa
Chú thích :
(1) : Cập nhật thông tin tổ bộ môn, giảng viên, cán bộ
(2) : Kết quả cập nhật
Qu¶n lý Khoa
Qu¶n trÞ
(1)(2)
Kho d÷
liÖu