Tải bản đầy đủ (.docx) (46 trang)

Đồ án tốt nghiệp xây dựng website album

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (748.21 KB, 46 trang )

Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
MỤC LỤC
Trang
LỜI NÓI ĐẦU
3
PHẦN I GIỚI THIỆU NGỒN NGỮ 4
CHƯƠNG I INTERNET VÀ CÔNG NGHỆ ASP.NET
4
I.GIỚI THIỆU VỀ INTERNET INFORMATION SERVER
4
Giới thiệu về Internet Information Server (IIS) 4
II.GIỚI THIỆU VỀ NGÔN NGỮ ASP.NET
5
1.Mở đầu về ASP.NET 5
2.Những điểm khác biệt của ASP và ASP.NET 7
CHƯƠNG II NGÔN NGỮ LẬP TRÌNH C#
11
I. TỔNG QUAN VỀ NGÔN NGỮ LẬP TRÌNH C#
11
II.TẠI SAO PHẢI SỬ DỤNG NGÔN NGỮ C#
12
CHƯƠNG III NGÔN NGỮ SQL VÀ CƠ SỞ DỮ LIỆU SQL SERVER
I.CÁC ĐỐI TƯỢNG TRONG HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU SQL
SERVER
14
1.Bảng (Table) : 14
2.Khung nhìn dữ liệu (View) : 14
3.Chỉ số của bảng (Index) : 14
4.Thủ tục lưu trữ (Store procedure) : 14
5.Trigger : 14
II.NGÔN NGỮ CƠ SỞ DỮ LIỆU SQL : 15


1.Định nghĩa 15
2.Cách sử dụng ngôn ngữ SQL 15
III.TÍNH TOÀN VẸN VÀ BẢO MẬT :
15
PHẦN II PHÂN TÍCH THIẾT KÊ WEBSITE ALBUM
CHƯƠNG I KHẢO SÁT HỆ THỐNG
17
I.NÊU BÀI TOÁN
17
II. CÁC VẤN ĐỀ CHÍNH VÀ PHẠM VI GIẢI QUYẾT CỦA BÀI
TOÁN
17
CHƯƠNG II PHÂN TÍCH HỆ THỐNG VỀ CHỨC NĂNG
1
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
1
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
I. SƠ ĐỒ CHỨC NĂNG CỦA HỆ THỐNG
19
II. SƠ ĐỒ DÒNG DỮ LIỆU
19
1. Các tác nhân ngoài 19
2. Các kho dữ liệu 19
3. Sơ đồ dòng dữ liệu 19
4. Các thực thể trong cơ sở dữ liệu 22
5. Quan hệ các bảng trong cơ sở dữ liệu 22
CHƯƠNG III THIẾT KẾ HỆ THỐNG
I.CÁC TIẾN TRÌNH QUAN TRỌNG
23
1. Tiến trình đăng ký tài khoản người sử dụng 23

2. Tiến trình sửa đổi tài khoản người sử dụng 23
3.Tiến trình cập nhật ảnh 24
4.Tiến trình tìm kiếm ảnh 26
II.MÔ TẢ CHI TIẾT CÁC LỚP ĐỐI TƯỢNG CHÍNH VÀ QUAN
HỆ TRONG CƠ SỞ DỮ LIỆU
27
III.CÁC GIAO DIỆN MÀN HÌNH
29
IV.MỘT SỐ MÃ NGUỒN CỦA CÁC MODUL QUAN TRỌNG
TRONG HỆ THỐNG
32
1. Một số hàm hệ thống 32
2. Modul đăng ký tài khoản người sử dụng 35
3. Modul tạo Album 37
4. Modul nhập ảnh 40
V. KẾT LUẬN 43
LỜI NÓI ĐẦU
Khi đời sống của đa số mọi người đều trở nên khá giả, họ lại muốn
đi du lịch khắc nơi để mở rộng tầm hiểu biết về văn hóa của các dân tộc,
các quốc gia trên thế giới. Họ chụp lại những nơi họ đã đi qua và lưu
những kỷ niệm đẹp trong những chuyến đi đó vào trong những bức ảnh.
Nhưng những bức ảnh bằng giấy có thể hỏng theo thời gian.
2
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
2
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
Với công nghệ thông tin đang phát triển, giúp cho con người có thể
chuyển tải thông tin với khoảng cách rất xa trong thới gian ngắn, đặc biệt
là có thể lưu trữ thông tin trên mạng.
Xuất phát từ ý tưởng xây dựng một website để lưu lại những bức

ảnh đẹp và những gợi ý của thầy Nguyễn Đức Tuấn em đã lựa chọn bài
tập với đề tài “Xây dựng Website Album ”.
Với Website Album, người dùng có thể truy cập, đăng ký tài khoản
và sử dụng website để lưu những tấm ảnh mà mình thích nhất. Ngoài ra,
người dùng có thể lưu ảnh theo thời gian hay sự kiện đáng nhớ (Album),
một Album có thể có nhiều Album khác, có thể viết lời tựa cho bức ảnh
hoặc Album.
Người dùng có thế thay đổi tựa đề của Album hoặc của bức ảnh nếu
thấy không phù hợp và có thể xóa bỏ khi không cần thiết.
Trong quá trình làm bài, em xin chân thành cảm ơn thầy Nguyễn
Đức Tuấn người đã hết lòng giúp đỡ em trong suốt quá trình thực hiện và
hoàn thành bài tập tốt nghiệp này.
Xin chân thành cảm ơn tất cả các ý kiến đóng góp và sự giúp đỡ của
bạn bè đối với bài tập tốt nghiệp này
PHẦN I
GIỚI THIỆU NGỒN NGỮ
CHƯƠNG I
INTERNET VÀ CÔNG NGHỆ ASP.NET
I_ GIỚI THIỆU VỀ INTERNET INFORMATION SERVER(IIS ):
3
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
3
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
IIS - Viết tắt của Microsoft Internet Information Services (các dịch vụ cung
cấp thông tin Internet) là các dịch vụ dành cho máy chủ chạy trên nền Hệ điều
hành Window nhằm cung cấp và phân tán các thông tin lên mạng, nó bao gồm
nhiều dịch vụ khác nhau như Web Server, FTP Server, Nó có thể được sử
dụng để xuất bản nội dung của các trang Web lên Internet/Intranet bằng việc sử
dụng “Phương thức chuyển giao siêu văn bản“ - Hypertext Transport Protocol
(HTTP). Như vậy, sau khi bạn thiết kế xong các trang Web của mình, nếu bạn

muốn đưa chúng lên mạng để mọi người có thể truy cập và xem chúng thì bạn
phải nhờ đến một Web Server, ở đây là IIS. Nếu không thì trang Web của bạn
chỉ có thể được xem trên chính máy của bạn hoặc thông qua việc chia sẻ tệp
(file sharing) như các tệp bất kỳ trong mạng nội bộ mà thôi.
Nhiệm vụ của IIS là tiếp nhận yêu cầu của máy trạm và đáp ứng lại yêu cầu
đó bằng cách gửi về máy trạm những thông tin mà máy trạm yêu cầu. Có thể sử
dụng IIS để:
• Xuất bản một Website của bạn trên Internet
• Tạo các giao dịch thương mại điện tử trên Internet (hiện các catalog và
nhận được các đơn đặt hàng từ nguời tiêu dùng)
• Chia sẻ file dữ liệu thông qua giao thức FTP.
• Cho phép người ở xa có thể truy xuất database của bạn (gọi là Database
remote access). Và rất nhiều khả năng khác
IIS sử dụng các giao thức mạng phổ biến là HTTP (Hyper Text Transfer
Protocol) và FPT (File Transfer Protocol) và một số giao thức khác như SMTP,
POP3, để tiếp nhận yêu cầu và truyền tải thông tin trên mạng với các định
dạng khác nhau. Một trong những dịch vụ phổ biến nhất của IIS mà chúng ta
quan tâm trong giáo trình này là dịch vụ WWW (World Wide Web), nói tắt là
4
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
4
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
dịch vụ Web. Dịch vụ Web sử dụng giao thức HTTP để tiếp nhận yêu cầu
(Requests) của trình duyệt Web (Web Browser) dưới dạng một địa chỉ URL
(Uniform Resource Locator) của một trang Web và IIS phản hồi lại các yêu cầu
bằng cách gửi về cho Web Browser nội dung của trang Web tương ứng.
II.GIỚI THIỆU VỀ NGÔN NGỮ ASP.NET
1.Mở đầu về ASP.NET
ASP.NET có rất nhiều tính năng mới cho nhà phát triển ứng dụng Web
kể cả mã phía server được biên dịch, một kỹ thuật được gọi là code bihind để

tách biệt logic phía server với layout (bố cục) phía client, một mô hình điều
khiển phía server mở rộng, một mô hình liên kết dữ liệu tốt và dễ sử dụng, sự
triển khai và và sự hỗ trợ xcopy cho sự hiệu lực hóa form trên các client và
server. Hơn thế nữa, ASP.NET mang đến cho chúng ta sự hợp nhất : sự hợp
nhất giữa các ngôn ngữ, công cụ, thư viện, mô hình triển khai, thiết kế và chuẩn
đoán hệ thống. Các nhà phát triển ứng dụng Web không còn cần phân biệt giữa
các thành phần (component) được sử dụng bởi các trang của họ và các thành
phần được sử dụng ở nơi khac trong cấu trúc của họ. Họ không còn phải làm
việc với một trình gỡ rối script để chuẩn đoán các sự cố trong các trang của họ.
Họ không gặp phải những điều phức tạp thường khó hiểu của những ngôn ngữ
tạo script không được định kiểu và bây giờ có thể sử dụng bất kỳ ngôn ngữ
.NET nào mà họ thích trong việc tạo các trang của mình.Việc tạo các ứng dụng
Web bây giờ cũng giống như bất kỳ sự phát triển phầm mềm khác trên nền
.NET
Về cốt lõi, ASP.NET là một tập hợp các lớp .NET làm việc cùng với
nhau để phục vụ yêu cầu của HTTP. Một số lớp (class) này được định nghĩa
trong các Assembly hệ thống như một phần của các thư viện lớp cơ sở vốn
5
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
5
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
được cài đặt với runtime.NET, một số lớp này có thể được đặt trong các
assembly được triển khai trong GAC (Global Assembly Cache) và một số lớp
này được tải từ assembly cục bộ vốn ở trong thư mục ảo được liên kết với ứng
dụng này. Tất cả những lớp này được tải vào một miền (domain) ứng dụng
trong tiến trình làm việc ASP.NET và tương tác để tạo một thông báo phản hồi
cho một yêu cầu đã cho.
Mặc dù ASP.NET về mặt kỹ thuật không được gọi là ASP 4.0 nhưng
theo nhiều cách thì nó là như thế - phiên bản kế tiếp của ASP. Trong ASP.NET,
chúng ta không còn bị giới hạn chỉ trong hai ngôn ngữ tao script có sẵn trong

ASP truyền thống:VBScript và Jscript. Bất kỳ một ngôn ngữ .NET hoàn toàn
tương thích bây giờ có thể được sử dụng với ASP.NET, kể cả C# và VB.NET.
Minh họa một trang .aspx mẫu:
<! File : test.aspx >
<%@ Page Language = ‘C#’ %>
<script runat = ‘server’>
int Add(int x, int y)
{
return x+y ;
}
</script>
<html><body>
<h1> Test ASP.NET Page </h1>
<h2> 2+2 = <%=Add(2,2)%></h2>
<table border = 2>
6
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
6
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
<%
For (int i=0; i<10; i++){
%>
<tr><td>Row<%=i%>Col0</td> <td>Row<% = i %>Col1</td></tr>
<%
}
%>
</table>
<%
Response.Write(“<h2>Writen directly to Response </h2>”);
%>

</body></html>
2.Những điểm khác biệt của ASP và ASP.NET
Hiện tại thì ASP chỉ là ngôn ngữ kịch bản phi định kiểu dựa trên
VBScript, Jscript. ASP không tận dụng được các ngôn ngữ ràng buộc kiểu
mạnh như C++ , Visual Basic .Còn ASP.NET cho phép sử dụng ngôn ngữ trung
lập. Trang ASP.NET có thể viết bằng nhiêu ngôn ngữ như VBScript, Jscript,
Visual Basic, C++, C#.
Các trang ASP mã lệnh và giao diện trộn lẫn với nhau. Khi phát triển các
ứng dụng web lớn cần tách ra hai nhóm .Một nhóm thiết kế giao diện (Web
Designer) và một nhóm lập trình (programmer).Các trang ASP khó bảo trì khi
muốn thêm vào các mã lập trình mới hay thay đổi lại giao diện . ASP.NET cho
phép tách rời giữa mã lập trình và nội dung tài liệu.
7
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
7
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
Trong các phiên bản ASP hầu như phải viết mã chương trình để quản lý
mọi chuyện.Muốn quản lý trạng thái của các trường nhập dữ liệu trong form,
kiểm tra tính hợp lệ của dữ liệu do người dùng nhập vào, hay để tăng tốc cho
các trang ASP bằng các dùng vùng đệm thì đều phải viết mã.Còn ASP.NET
thực sự là mô hình đối tượng thành phần loại bỏ nhiều công đoạn viết mã mà
lập trình viên phải làm. ASP.NET cung cấp các thành phần điều khiển hoạt
động phía trình chủ (server side control) hoạt động theo hướng xử lý sự kiện.
Mọi việc kiểm soát trạng thái và tương tác với các thành phần điều khiển đểu
được trình chủ Web Server với kiến trúc ASP.NET lo liệu.
Visual Studio .Net của Microsoft là một công cụ tuyệt vời xây dựng các
ứng dụng Web đặc biệt là ASP.NET.Môi trường lập trình mới của Windows
không phân biệt ngôn ngữ. ASP.NET có thể viết bằng bất kì ngôn ngữ nào có
trong Visual Studio.
Những điểm mới của ASP.NET

Page (trang ứng dụng) : sử dụng các thành phần điều khiển có khả năng
hoạt động và tương tác với nhau ngay trên trình chủ Web Server.Đặc điểm này
làm giảm thiểu quá trình viết mã. Lập trình trong môi trường ASP.NET giống
như lập trình thiết kế Form trong VB do đó các ứng dụng trong ASP.NET gọi là
Web Forms.
HTML Server Side Controls : Các thành phần điều khiển HTML có khả
năng xử lý ngay trên trình chủ dựa vào thuộc tính và phương thức tương tự cách
hoạt động của chúng phía trình khách .Những thành phần điều khiển này cho
phép kết hợp mã xử lý trang ASP.NET với một sự kiện nào đó phát sinh phía
trình khách được xem như đang diễn ra trên trình chủ.
8
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
8
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
Web Service :Trang ASP.NET của bạn có thể không cần hiển thị kiết
xuất cho trình khách .Chúng hoạt động như những chương trình xử lý hậu cảnh.
Tự đông quản lý trạng thái của đối tượng Session và Application: Cho
phép lưu nội dung của Session hay Application của một ứng dụng đặc thù nào
đó xuống các file trên đĩa để sử dụng lại.
Xử lý lỗi , debug và lần vết (tracing): Các công cụ gỡ lỗi, lần vết thông
tin được nâng cấp đáng tin cậy hơn.Mỗi trang tài liệu có thể sử dụng một trang
xử lý lỗi riêng biệt và kiết xuất nội dung của biến để theo dõi ngay trong quá
trình thực thi trang.
Tùy biến vùng đệm trên trình chủ (Custom Server Caching):Vùng đệm
của ASP.NET được quản lý rất linh động.
Một tập các đối tượng phong phú: ASP.NET hỗ trợ các thư viện lớp và
các đối tượng phục vụ cho hầu hết những gì mà các nhà phát triển cẩn dụng
đến. Vì vậy làm đơn giản hóa công việc viết ứng dụng cho Web.
Các đối tượng nội tại như Request, Response, Form, Cookies, Server
Variables đểu được giữ lại và hoàn toàn tương thích với ASP. Tuy nhiên

ASP.NET cung cấp cho các đối tượng này nhiều thuộc tính và phương thức mới
giúp nâng cao khả năng xử lý lỗi của chúng.
Các thành phần điều khiển trong ASP.NET
Điều khiển nội tại (intrinsic control)
Các điều khiển này tạo ra những phần tử kiểu HTML phía trình khách.
Các phần tử HTML được coi là điểu khiển nội tại : <table> <tr> <th> <td>
<form> <input> <select> <textarea> <button> <a> <img>
Điều khiển danh sách(list control)
9
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
9
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
Thành phần điều khiển này cho phép hiển thị mọi loại dữ liệu kiểu danh
sách như các bảng dữ liệu (table), khung nhìn(view), liệt kê…Điều khiển danh
sách chuẩn gồm các thành phần sau: Repeater, Datalist và DataGrid.
Điều khiển Repeater là thành phần đơn giản cho phép kết xuất những nội
dung lặp lại với cùng một định dạng, font chữ, màu sắc…
DataList giống như Repeater nhưng cho phép thêm vào các phần tử điều
khiển HTML khác để biểu diễn cho dữ liệu lặp lại.
DataGrid là khung lưới hay bảng dùng để trình bày dữ liệu theo định
dạng hàng và cột, có thể dùng DataGrid để định dạng các dòng hoặc cột dữ liệu
giống như bảng tính của Excel và kiết xuất cuối cùng hoàn toàn là mã HTML
tương thích với hầu hết các trình duyệt
Ngoài ra còn có 2 điều khiển danh sách khác là RadioButtonList và
CheckBoxList để tạo các nút chọn.
Điểu khiển kiểm tra(validate control)
ASP.NET cung cấp các điều khiển kiểm tra gọi là Validation Control có
thể dùng để sinh mã kiểm tra ở cả hai phía Client và Server .
Có 3 điều khiển :
RequeredFieldValidator: dùng kiểm tra giá trị bắt buộc của trường

ComparedValidator : Kiểm tra giá trị thông qua so sánh với giá trị khác.
RegularExpressionValidator : Kiểm tra tính hợp lệ của dữ liệu.
Ngoài ra còn có các điều khiển CustomValidator để cài đặt bộ kiểm tra
dữ liệu cho riêng mình bằng các hàm JavaScript hoăc Visual Basic…,
ValidationSummary sẽ kiểm tra tất cả các thành phần điều khiển của Validator
và in kết quả nếu một điều khiển nào không thỏa mãn điều kiện kiểm tra.
10
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
10
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
Mỗi điều khiển Validator được liên kết với một thành phần HTML thông
qua thuộc tính của phần tử.
CHƯƠNG II
NGÔN NGỮ LẬP TRÌNH C#
I. TỔNG QUAN VỀ NGÔN NGỮ LẬP TRÌNH C#
Ngôn ngữ C# khá đơn giản, chỉ khoảng 80 từ khóa và hơn mười mấy kiểu
dữ liệu được xây dựng sẵn. Tuy nhiên, ngôn ngữ C# có ý nghĩa cao khi nó thực
thi những khái niệm lập trình hiện đại. C# bao gồm tất cả những hỗ trợ cho cấu
trúc, thành phần component, lập trìnhhướng đối tượng. Những tính chất đó hiện
diện trong một ngôn ngữ lập trình hiện đại. Và ngôn ngữ C# hội đủ những điều
kiện như vậy, hơn nữa nó được xây dựng trên nền tảng của hai ngôn ngữ mạnh
nhất là C++ và Java.
Ngôn ngữ C# được phát triển bởi đội ngũ kỹ sư của Microsoft, trong đó
người dẫn đầu là Anders Hejlsberg và Scott Wiltamuth. Cả hai người này điều
là những người nổi tiếng, trong đó Anders Hejlsberg được biết đến là tác giả
của Turbo Pascal, một ngôn ngữ lập trình PC phổ biến. Và ông đứng đầu nhóm
thiết kế Borland Delphi, một trong những thành công đầu tiên của việc xây
dựng môi trường phát triển tích hợp (IDE) cho lập trình client/server.
Trong ngôn ngữ C# mọi thứ liên quan đến khai báo lớp điều được tìm thấy
trong phần khai báo của nó. Định nghĩa một lớp trong ngôn ngữ C# không đoi

hỏi phải chia ra tập tin header và tập tin nguồn giống như trong ngôn ngữ C++.
Hơn thế nữa, ngôn ngữ C# hỗ trợ kiểu XML, cho phép chèn các tag XML để
phát sinh tự động các document cho lớp.
C# cũng hỗ trợ giao diện interface, nó được xem như một cam kết với một
lớp cho những dịch vụ mà giao diện quy định. Trong ngôn ngữ C#, một lớp chỉ
11
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
11
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
có thể kế thừa từ duy nhất một lớp cha, tức là không cho đa kế thừa như trong
ngôn ngữ C++, tuy nhiên một lớp có thể thi nhiều giao diện. Khi một lớp thực
thi một giao diện thì nó sẽ hứa là nó sẽ cung cấp chức năng thực thi giao diện.
Trong ngôn ngữ C#, những cấu trúc cũng được hỗ trợ, nhưng khái niệm về
ngữ nghĩa của nó thay đổi khác với C++. Trong C#, một cấu trúc được giới hạn,
là kiểu dữ liệu nhỏ gọn, và khi tạo thể hiện thì nó yêu cầu ít hơn về hệ điều
hành và bộ nhớ so với một lớp. Một cấu trúc thì không thể kế thừa từ một lớp
hay được kế thừa nhưng một cấu trúc có thể thực thi một giao diện.
II.TẠI SAO PHẢI SỬ DỤNG NGÔN NGỮ C#
Nhiều người tin rằng không cần thiết có một ngôn ngữ lập trình mới. Java,
C++, Microsoft Visual Basic, và những ngôn ngữ khác được nghĩ rằng đa cung
cấp tất cả những chức năng cần thiết.
Ngôn ngữ C# là một ngôn ngữ được dẫn xuất từ C và C++, nhưng nó được
tạo từ nền tảng phát triển hơn. Microsoft bắt đầu với công việc trong C và C++
và thêm vào những đặc tính mới để làm cho ngôn ngữ này dễ sử dụng hơn.
Nhiều trong số những đặc tính này khá giống với những đặc tính có trong ngôn
ngữ Java. Không dừng lại ở đó, Microsoft đưa ra một số mục đích khi xây dựng
ngôn ngữ này. Những mục đích này được được tóm tắt như sau:
• C# là ngôn ngữ đơn giản
• C# là ngôn ngữ hiện đại
• C# là ngôn ngữ hướng đối tượng

• C# là ngôn ngữ mạnh mẽ và mềm dẻo
• C# là ngôn ngữ có ít từ khóa
• C# là ngôn ngữ hướng module
• C# sẽ trở nên phổ biến
12
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
12
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
CHƯƠNG III
NGÔN NGỮ SQL VÀ CƠ SỞ DỮ LIỆU SQL SERVER
TỔNG QUAN VỀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU SQL SERVER
SQL là ngôn ngữ truy vấn có cấu trúc, là viết tắt của cụm từ Structure Query
Language. Có nghĩa là SQL chỉ làm việc với những dữ liệu có cấu trúc dạng
bảng (table) như của Foxpro, DBase, Access
Trên lĩnh vực đang phát triển hiện nay là Internet, ngôn ngữ SQL được sử
dụng để nhanh chóng tạo ra các trang Web động (Dynamic Web Page). Trang
Web động thường có nội dung được lấy ra từ Cơ sở dữ liệu SQL có thể được sử
dụng như một chất keo kết dính giữa Cơ sở dữ liệu và trang Web. Khi người
dùng yêu cầu, SQL sẽ thực hiện việc truy cập thông tin trong Cơ sở dữ liệu trên
máy chủ và hiển thị kết quả trên trang Web. Và SQL cũng là công cụ để cập
nhật thông tin cho Cơ sở dữ liệu đó.
SQL Server 2000 là một phần mềm sử dụng ngôn ngữ SQL. Là hệ thống
quản lý cơ sở dữ liệu (Relational Database Management System - RDBMS ) sử
dụng Transact-SQL để trao đổi dữ liệu giữa Client computer và SQL Server
computer. Một RDBMS bao gồm databases, database engine và các ứng dụng
dùng để quản lý dữ liệu và các bộ phận khác nhau trong RDBMS.
SQL Server 2000 được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu
rất lớn (Very Large Database Environment) lên đến Tera-Byte và có thể phục
vụ cùng lúc cho hàng ngàn user. SQL Server 2000 có thể kết hợp "ăn ý" với các
server khác như Microsoft Internet Information Server (IIS), E-Commerce

Server, Proxy Server
13
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
13
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
SQL Server là một cơ sở dữ liệu Client/Server. Nó có hai chức năng chính :
• Chứa dữ liệu người dùng nhập vào
• Xử lý các yêu cầu gửi tới thông qua ngôn ngữ truy vấn cơ sở dữ liệu và trả
về cho ứng dụng kết quả xử lý.
I.CÁC ĐỐI TƯỢNG TRONG HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU SQL
SERVER
1.Bảng (Table) :
Bảng là đơn vị lưu trữ dữ liệu chính trong cơ sở dữ liệu SQL Server, đó là
tập hợp dữ liệu có liên quan với nhau , là một đối tượng lưu trữ dữ liệu dưới
dạng hàng, cột. Các hàng trong bảng người ta gọi là các bản ghi chứa dữ liệu,
các cột là các trường chứa các thuộc tính của bảng.
2.Khung nhìn dữ liệu (View) :
Về mặt logic, bảng ảo giống như một bảng thực, nó không chứa bảng vật
lý nào mà nó chỉ là kết quả của việc thực hiện các câu lệnh Select trên những
bảng thực và dữ liệu của nó sẽ bị mất đi khi không thực hiện các câu lệnh đó.
3.Chỉ số của bảng (Index) :
Chỉ số là một cấu trúc được tạo ra để lưu trữ thông tin về vị trí các bản ghi
trong một bảng dữ liệu nhằm cải thiên tốc độ truy xuất dữ liệu. Một chỉ số được
tạo nên trên một hay nhiều bảng, mọi sự thay đổi dữ liệu trong bảng đều được
tự động cập nhật với các chỉ số có liên quan trong suốt quá trình sử dụng.
4.Thủ tục lưu trữ (Store procedure) :
Là một khối các câu lệnh truy vấn cơ sở dữ liệu, được lưu trữ trong một
thủ tục và có tham số vào cũng như giá trị trả về khi thủ tục đó được thực hiện.
5.Trigger :
14

SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
14
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
Là một thủ tục lưu trữ được tự đông thực hiện bởi SQL Server khi một
bảng được sửa đổi bằng các câu lệnh UPDATE, INSERT, DELETE. Nó có thể
lưu trữ một câu lệnh đơn giản hay các câu lệnh phức tạp của T_SQL
(Transaction SQL), nhờ đó ta có thể lợi dụng cơ chế này để viết các Trigger
nhằm giải quyết các quy tắc nghiệp vụ, các mối dàng buộc phức tạp.
II.NGÔN NGỮ CƠ SỞ DỮ LIỆU SQL :
1.Định nghĩa :
Ngôn ngữ cơ sở dữ liệu (CSDL) là các câu lệnh, các mệnh đề được phát
biểu theo một quy tắc nhất định, được người sử dụng đưa vào và được hệ quản
tri CSDL xử lý
Ngôn ngữ SQL là ngôn ngữ CSDL dùng các câu lệnh để chèn/ xoá/ sửa
dữ liệu. Ngoài ra, dùng mệnh đề để hỏi, truy vấn dl, bảo vệ dữ liệu. Người ta
gọi đây là ngôn ngữ phi thủ tục, nghĩa là người sử dụng sử dụng các câu lệnh
của ngôn ngữ để xác định dữ liệu nào họ muốn mà không cần biết dữ liệu này
được tìm như thế nào.
2.Cách sử dụng ngôn ngữ SQL : có 2 cách
Sử dụng tương tác : người sử dụng gửi câu lệnh tới và được hệ quản trị
cơ sở dữ liệu thực thi ngay và kết quả được trả về cho người sử dụng
Nhúng các câu lệnh SQL vào trong chương trình, các chương trình này
có thể viết bằng các ngôn ngữ khác nhau, ưu điểm của phương pháp này là
được thực hiện nhanh và tăng tính mềm dẻo.
III.TÍNH TOÀN VẸN VÀ BẢO MẬT :
15
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
15
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
Hệ quản trị cơ sở dữ liệu SQL Server cho phép nhiều người sử dụng

CSDL của hệ thống nên bảo mật là vấn đề đặc biệt quan trọng, công việc này sẽ
điều khiển mọi sự truy cập và sử dụng CSDL của hệ thống. Vấn đề bảo mật ở
đây là :
- Ngăn chặn sự truy cập trái phép tới cơ sở dữ liệu.
- Không cho phép sự truy cập trái phép trên các đối tượng của hệ quản trị cơ
sở dữ liệu.
- Điều khiển không gian sử dụng đĩa.
- Điều khiển sự sử dụng tài nguyên của hệ thống.
- Khiểm tra người dùng.
- Bảo mật cơ sở dữ liệu được thực hiện ở 2 mức : bảo mật hệ thống và bảo
mật mức dữ liệu.
Bảo mật hệ thống cung cấp những kỹ thuật điều khiển sự truy nhập và sử
dụng CSDL ở mức hệ thống, cụ thể là :
- Phải đúng tên người dùng và mật khẩu.
- Giới hạn tài nguyên đối với người dùng.
- Bảo mật hệ thống kiểm tra những CSDL nào được phép truy nhập.
Bảo mật dữ liệu cung cấp những kỹ thuật điều khiển sự truy nhập và sử
dụng CSDL ở các đối tượng cụ thể như : người dùng được quyền truy nhập tới
lược đồ đối tượng nào, và xác định quyền thao tác với những đối tượng đó .
Trong SQL Server quyền được thực hiện một thao tác đặc biệt nào đó
trên CSDL được chia làm 2 loại :
Quyền đối tượng : là những quyền cho phép người sử dụng thực hiện một
tác động nào đó lên đối tượng, (ví dụ : INSERT, UPDATE lên một bảng).
16
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
16
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
Quyền hệ thống : là quyền cho phép người dùng sử dụng có thể thực hiện
một số lớp thao tác đặc biệt như :
Quyền tạo bảng

Quyền được tạo ra người sử dụng hoặc tạo ra các phiên làm việc.
PHẦN II
PHÂN TÍCH THIẾT KÊ WEBSITE ALBUM
CHƯƠNG I
KHẢO SÁT HỆ THỐNG
I.NÊU BÀI TOÁN
Hiện nay, cùng với sự phát triển không ngừng của kỹ thuật máy tính ,
mạng điện tử , công nghệ thông tin .Mạng Internet là một trong những sản
phẩm có giá trị hết sức to lớn của công nghệ thông tin ,và ngày càng trở thành
công cụ không thể thiếu , là nền tảng cho sự truyền tải và trao đổi thông tin trên
toàn cầu .Ngày nay, các hoạt động giải trí, văn hóa , thể thao , thương mại…
dần được đưa lên trên mạng và ngày càng chứng tỏ hiệu quả của Internet trong
việc chia sẻ thông tin .
Với bài tập này, em xin trình bày đơn giản một website giúp cho người
dùng có thể thao tác lưu, sửa hoặc xóa các file ảnh của mình ….
17
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
17
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
II. CÁC VẤN ĐỀ CHÍNH VÀ PHẠM VI GIẢI QUYẾT CỦA BÀI TOÁN
Website được xây dựng nhằm cung cấp cho người sử dụng một công cụ
để tạo chọ mình một góc riêng lưu lại những kỷ niệm cùng bạn bè và người
thân bằng cách lưu những tấm hình kỷ niệm vào trong hệ thống cơ sở dữ liệu
của trang web. Khi cần người dùng có thể xem lại hay thay đổi thông tin mà
mình mong muốn.
Do trang web được thiết kế cho người dùng tự quản lý phần dữ liệu ảnh
của mình thông qua tên đăng nhập và mật khẩu của người dùng khi đăng ký sử
dụng nên hệ thống chỉ phục vụ người dùng khi đã truy nhập Website thành
công bằng tên đăng nhập và mật khẩu của mình.
Hệ thống cho phép người dùng có thể lưu lại những bức ảnh theo thời

gian hoặc sự kiện đáng nhớ của mình vào một Album do chình mình tạo ra.
Người dùng có thể sửa các thông tin của ảnh như tựa đề hoặc ngày chụp ảnh
cho phù hợp, và có thể xóa ảnh đi khi nó quá cũ hoặc không muốn nhớ đến nó
nữa.
Hệ thống còn cho người dùng biết dung lượng, kính thước bức ảnh mà họ
lưu trên website.
18
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
18
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
CHƯƠNG II
PHÂN TÍCH HỆ THỐNG VỀ CHỨC NĂNG
I. SƠ ĐỒ CHỨC NĂNG CỦA HỆ THỐNG
Sơ đồ phân rã chức năng
II. SƠ ĐỒ DÒNG DỮ LIỆU
19
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
19
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
1. Các tác nhân ngoài
Tác nhân ngoài : Người sử dụng
2. Các kho dữ liệu
• Kho Ảnh
• Kho Album
• Kho User
3. Sơ đồ dòng dữ liệu
a) Một số biểu tượng trong sơ đồ dòng dữ liệu
+ Chức năng
+ Hướng đi của dòng dữ liệu
+ Kho dữ liệu

b) Sơ đồ dòng dữ liệu mức đỉnh
20
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
20
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
c) Sơ đồ dòng dữ liệu chức năng Quản lý Album
21
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
21
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
d) Sơ đồ dòng dữ liệu chức năng Quản lý Ảnh
22
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
22
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
4. Các thực thể trong cơ sở dữ liệu
• Người sử dụng (Mã người dùng, tên truy cập, mật khẩu, Địa chỉ Email)
• Ảnh (Mã Ảnh, tên ảnh, tiêu đề, ngày chụp, ngày đăng, chiều dài, chiều
rộng, dung lượng ảnh)
• Album (Mã Album, tên Album, lời tựa cho album, ngày tạo)
5. Quan hệ các bảng trong cơ sở dữ liệu
23
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
23
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
CHƯƠNG III
THIẾT KẾ HỆ THỐNG
I.CÁC TIẾN TRÌNH QUAN TRỌNG
1.Tiến trình đăng kí tài khoản người sử dụng
24

SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn
24
Báo cáo đồ án tốt nghiệp Khoa Công Nghệ Tin Học
Dữ liệu vào
Thông tin cá nhân của người dùng: Email
Thông tin về tài khoản cần đăng kí:Tên truy cập, Mật khẩu
Dữ liệu ra
Thông báo đăng kí thành công nếu dữ liệu hợp lệ
Thông báo không đăng kí được
Mô tả tiến trình
Kiểm tra Email đã tồn tại chưa
Nếu đã tồn tại thì yêu cầu nhập Email khác
Lưu thông tin vào kho nhà quản trị
Kiểm tra tên đăng nhập đã tồn tại chưa
Nếu đã tồn tại thì yêu cầu nhập tên khác
Lưu thông tin vào kho nhà quản trị
Thông báo đăng kí thành công
2.Tiến trình sửa đổi tài khoản người sử dụng
Dữ liệu vào
Thông tin cá nhân của người sử dụng cần sửa: Email
Thông tin mới của tài khoản người sử dụng: Mật khẩu, Tên truy cập
Dữ liệu ra
Thông báo sửa đổi thành công
Thông báo cho người dùng biết nếu không sửa đổi được
Mô tả tiến trình
Kiểm tra tên đăng nhập đã tồn tại chưa
Nếu đã tồn tại thì yêu cầu nhập tên khác
Lưu thông tin vào kho nhà quản trị
25
SV:Lê Ngọc Huệ GVHD:Nguyễn Đức Tuấn

25

×