Chương trình đã đạt được kết quả như sau:
- Việc quản lý sách hiệu quả và tiện lợi hơn.
- Cho phép lưu trữ và cập nhật sách mới một cách dễ dàng với khối lượng 
lớn.
- Hỗ trợ cách tìm kiếm sách khác nhau, các loại thống kê khác nhau.
- Thao tác tốt, cung cấp thông tin nhanh chóng, kịp thời và chính xác cho 
quá trình cho mượn và trả sách.
                
              
                                            
                                
            
 
            
                 90 trang
90 trang | 
Chia sẻ: lylyngoc | Lượt xem: 2942 | Lượt tải: 3 
              
            Bạn đang xem trước 20 trang tài liệu Luận văn Xây dựng website quản lý thư viện trường đại học Kinh tế Quốc dân, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
 script nào đó. 
Khi một Web Browser gửi một request tới một file .asp thỡ script trong file sẽ được 
chạy để trả kết quả về cho browser đó. Khi web server nhận được request tới một file .asp 
thỡ nú sẽ đọc từ đầu tới cuối file .asp đó, thực hiện các lệnh script trong đó và trả kết quả về 
cho Web Browser dưới dạng của một trang HTML. 
3. Cấu trúc của một trang ASP 
Trang ASP đơn giản là một trang văn bản với phần mở rộng là .asp gồm có 3 phần như 
sau: 
 - Văn bản (text) 
a. HTML tag (HTML : Hypertext Markup Language) 
b. Các đoạn script asp 
Khi thêm một đoạn script vào HTML, ASP dùng dấu phân cách (delimiters) để phân biệt 
giữa đoạn HTML và đoạn ASP để kết thúc đoạn script. Có thể 
xem trang ASP như một trang HTML có bổ sung các ASP Script Command. 
Ví dụ : 
 Bạn bắt đầu với trang ASP này ngày : 
4. Mụ hỡnh ứng dụng web qua cụng nghệ ASP : 
 Thao tác giữa client và server trong một ứng dụng web có thể được thể hiện khái quát 
như sau: 
 HTTP 
Mụ hỡnh ứng dụng Web thể hiện qua cụng nghệ ASP 
5. Hoạt động của một trang ASP : 
Khi một trang ASP được yêu cầu bởi web browser, web server sẽ duyệt tuần tự trang 
này và chỉ dịch các script ASP. tuỳ theo người xây dựng trang web quy định mà kết quả do 
web server dịch sẽ trả về lần lượt cho trỡnh duyệt của người dùng hay là chỉ trả về khi dich 
xong tất cả các script. kết quả trả về này mặc định là một trang theo cấu trúccủa một trang 
HTML. 
6. Các tính chất của ASP : 
Client 
Trỡnh 
duyệt 
Web 
Web server 
ASP 
A
D
O 
O
L
E
D
B 
O
D
B
C 
DB 
server 
DBMSSQ
L 
server 
Với ASP có thể chèn các script thực thi được vào trực tiếp các file HTML. Khi đó 
việc tạo ra trang HTML và xử lý script trở nờn đồng thời, điều này cho phép ta tạo ra các 
hoạt động của web site một cách linh hoạt uyển chuyển, có thể chèn các thành phần HTML 
động vào trang Web tuỳ vào từng trường hợp cụ thể. 
Các tính chất của ASP: 
- Có thể kết hợp với file HTML 
- Dễ sử dụng, tạo các script dễ viết, không cần phải biên dịch (compiling) hay kết nối 
(linking) các chương trỡnh được tạo ra. 
- Hoạt động theo hướng đối tượng, với các build-in Object rất tiện dụng: Request, 
Response, Server, Aplication, Session. 
- Có khả năng mở rộng các thành phần ActiveX server (ActiveX server components). 
Môi trường của ASP sẽ được cài đặt trên Server cùng với Web server. một ứng dụng viết 
bằng ASP là một file hay nhiều file văn bản có phần tên mở rộng là .asp, các file này được 
đặt trong một thư mục ảo (Virtual Dirrectory) của Web server. 
Cỏc ứng dụng ASP dễ tạo vỡ ta dựng cỏc ASP script để viết các ứng dụng. Khi tạo các 
script của ASP ta có thể dùng bất kỳ một ngôn ngữ script nào, chỉ cần có scripting engine 
tương ứng của ngôn ngữ đó mà thôi. ASP cung cấp sẵn cho ta hai scripting engine là Visual 
Basic Script (VBScript) và Java Script (Jscript). Ngoài ra ASP cũn cung cấp sẵn cỏc 
ActiveX Component rất hữu dụng, ta cú thể dựng chỳng để thực hiện các công việc phức 
tạp như truy xuất cơ sở dữ liệu, truy xuất file,… Không những thế mà ta cũn cú thể tự mỡnh 
tạo ra cỏ component của riờng mỡnh và thờm vào để sử dụng trong ASP. ASP tạo ra các 
trang HTML tương thích với các Web Browser chuẩn. 
7. Một số ưu và khuyết điểm của ASP . 
a. Ưu điểm : 
- ASP giúp người dùng xây dựng các ứng dụng Web với những tính năng sinh động. 
Các trang ASP không cần phải hợp dịch. 
- Dễ dàng tương thích với các công nghệ của Microsoft. ASP sử dụng ActiveX Data 
Object (ADO) để thao tác với cơ sở dữ liệu hết sức tiện lợi. 
- Với những gỡ ASP cung cấp, cỏc nhà phỏt triển ứng dụng web dễ dàng tiếp cận cụng 
nghệ này và nhanh chúng tạo ra cỏc sản phẩm có giá trị. Điều này hết sức có ý nghĩa trong 
điều kiện phát triển như vũ bóo của tin học ngày nay. Nú gúp phần tạo nờn một đội ngũ lập 
trỡnh web lớn mạnh. 
- ASP có tính năng mở. Nó cho phép các nhà lập trỡnh xõy dựng cỏc component và 
đăng ký sử dụng dễ dàng. 
b. Khuyết điểm : 
- ASP chỉ chạy và tương thích trên môi trường Window điều này làm ASP bị hạn chế 
rất nhiều. 
- Dùng ASP chung ta sẽ gặp không ít khó khăn trong việc can thiệp sâu vào hệ thống. 
- Các ứng dụng ASP chạy chậm hơn công nghệ Java Servlet. 
- Tớnh bảo mật thấp do cỏc mó ASP đều có thể đọc được nếu người dùng có quyền 
truy cập vào web server. Có lẽ đây là lý do quan trọng nhất để người dùng không chọn công 
nghệ Asp. 
II .Các đối tượng Built-in trong ASP. 
ASP có sẵn 5 đối tượng ta có thể dùng được mà không cần phải tạo. Chúng được gọi 
là các build-in object, bao gồm : 
 Request : Là đối tượng nhận tất cả các giá trị mà trỡnh duyệt của client gởi đến 
server thông qua một yêu cầu HTTP (HTTP request). 
 Response : Khác với đối tượng Request, Response gửi tất cả thụng tin vừa xử lý cho 
cỏc client yờu cầu. 
 Server : Là môi trường máy server nơi ASP đang chạy, chứa các thông tin và tác vụ 
về hệ thống. 
 Aplication : Đại diện cho ứng dụng Web của ASP, chứa script hiện hành. 
 Session : Là một biến đại diện cho user. 
1. Đối tượng Request. 
 Định nghĩa: 
Với đối tượng Request, các ứng dụng có thể lấy dễ dàng các thông tin gửi tới từ user. 
 Ví dụ : Khi user submit thông tin từ một form. 
Đối tượng Request cho phép truy xuất tới bất kỳ thông tin nào do user gửi tới bằng giao 
thức HTTP như: 
- Các thông tin chuẩn nằm trong các biến server. 
- Các tham số gửi tới bằng phương thức POST 
- Các tham số gửi tới bằng phương thức GET 
- Các Cookies. 
- Các Client Certificates. 
 Cú pháp tổng quát: 
Request.(Collection Name)(Variable) 
 Đối tượng Request : Có 5 Collection: 
- Client Certificates: Nhận Certification Fields từ Request của Web Browser. Nếu 
Web Browser sử dụng http:// để connect với server, Browser sẽ gửi certification fields 
- Query string: Nhận giá trị của các biến trong HTML query string. Đây là giá trị 
được gửi lên theo sau dấu chấm hỏi (?) trong HTML Request. 
- Form: Nhận các giá trị của các phần tử nên form sử dụng phương thức POST 
- Cookies: Cho phép nhận những giá trị của cookies trong một HTML Request. 
- Server Variable: Nhận các giá trị của các biến môi trường. 
 Ví dụ lấy thông tin từ form : 
HTML form là cách thức thông thường để trao đổi thông tin giữa Web Server và 
user. HTML form cung cấp nhiều cách nhập thông tin của user như : textboxes, radio 
button, check boxes,… và hai phương thức gửi thông tin là POST và GET. 
 Ứng dụng ASP có thể sử dụng form để tạo ra sự liên lạc dữ liệu giữa các trang theo 
một trong ba cách : 
- File .html chứa các form và gửi giá trị của nó tới một file .asp 
- File .asp có thể tạo form và gửi giá trị của nó tới một file .asp 
- File .asp có thể tạo form và gửi thông tin tới ngay chính nó. 
Khi lấy thông tin từ form, đối tượng Request có thể lấy các loại thông tin khác nhau 
bằng cách “ Sử dụng Query String ”. Việc sử dụng Querystring Collection làm cho việc 
truy xuất thông tin trở nên dễ dàng hơn. Nếu phương thức gửi từ form là GET, thỡ 
QueryString chứa toàn bộ thụng tin gửi tới như các tham số đi đằng sau dấu chấm hỏi (?) 
address box. nếu phương thức gửi là POST thỡ thụng tin gửi đi sẽ dấu đi. 
 Gửi thông tin trong cùng một file .asp : ASP cho phép một file .asp chứa form, khi 
user điền các giá trị vào form rồi gửi thỡ chớnh file .asp đó sẽ nhận các thông tin này và xử 
lý. 
Ví dụ : File " Example.asp" có nội dung như sau : 
 Login user 
 <% 
 If IsEmpty(Request("Email") ) = 0 then 
 Msg= " Vui lũng đánh địa chỉ của bạn” 
 Else If InStr(Request("Email"),"@") = 0 then 
 Msg=" Vui lũng đánh địa chỉ trong Servername@location” 
 Else 
 Msg=" Giá trị ở địa chỉ sẽ được thực thi” 
 End if 
 %> 
 E.mail: 
Khi user điền vào form địa chỉ email và submit thỡ file example.asp này sẽ nhận 
thông tin bằng phát biểu: value =”. Đoạn script này sẽ tuỳ thuộc 
vào giá trị chuỗi ký tự nhận được có chứa ký tự @ hay không để trả lời với user cũng chính 
bằng văn bản HTML nhúng trong example.asp. 
2. Đối tượng Response. 
 Định nghĩa: Việc gửi thông tin tới cho user sẽ được thực hiện nhờ đối tượng 
Response. 
 Cú pháp tổng quát : Response.Collection| property| method 
 Collection của đối tượng Response: 
 Cookies : Xác định giá trị biến cookies. Nếu cookies được chỉ ra không tồn tại, nó sẽ được 
tạo ra. Nếu nó tồn tại thỡ nú được nhận giá trị mới. 
 Các Properties: 
- Buffer : Chỉ ra trang Web output được giữ lại đệm buffer hay không. Khi một trang 
được đệm lại, Server sẽ không gửi một đáp ứng nào cho Browser cho đến khi tất cả các 
script trên trang hiện tại đó được thực thi xong hay phương pháp FLUSH or END được gọi. 
- ContentType : Chỉ ra HTML content type cho response. Nếu không có ContentType 
nào được chỉ ra, thỡ mặc nhiờn là “text/HTML”. 
- Expires : Chỉ định số thời gian trước khi một trang được cached trên một browser hết 
hạn. 
- ExpiresAbsolute : Chỉ ra ngày giờ của một trang được cache trên browser hết hạn. 
- Status : Chỉ ra giá trị trạng thái được Server. Giá trị trạng thái đựơc định nghĩa trong 
đặc tả HTTP. 
 Các Methods : 
- AddHeader : Thêm một HTML header với một giá trị được chỉ định. Phương thức này 
luôn luôn thêm mới một header vào response. Nó sẽ không thay thế những header có sẵn 
cùng tên với header mới. 
- AppendToLog : Thêm một chuỗi vào cuối file Log của Web server cho request này. 
- BinaryWrite : Xuất thông tin ra output HTML dạng binary. 
- Clear : Xoá đệm output HTML. Tuy nhiên, phương thức này chỉ xoá Response body 
mà không xoá Response head. Phương thức này sẽ sinh lỗi nếu như Response.Buffer chưa 
set thành TRUE. 
- End : Dừng xử lý file .asp và trả về kết quả hiện tại. 
- Flush: Gửi thông tin trong buffer cho client. Phương thức này sẽ sinh lỗi nếu 
Response.Buffer chưa set thành TRUE. 
- Redirect : Gửi một thông báo cho browser định hướng lại đến một URL khác. 
- Write : Ghi một biến ra HTML output như là một chuỗi. 
Ví dụ : 
- Đặt Response.Buffer = True cho phép đệm output cho đến khi xử lý xong hết trang. 
- Response. Write “Đây là thông báo xuất ra bằng Response” 
 sẽ xuất ra chuỗi ký tự giữa hai dấu nhỏy kộp. 
- Response.Clear : Xoá hết nội dung của Buffer (chỉ sử dụng được khi Response.Buffer 
= True) 
- Response.Redirect “WebPage1.html” sẽ xoá trang hiện tại và thay bằng trang 
WebPage1.html tại Web Browser trên máy Client. 
3. Đối tượng Session: 
 Định nghĩa : 
 Chúng ta có thể sử dụng 1 object session để lưu trữ thông tin cần thiết cho 1 user. 
Những biến được lưu trữ trong object vẫn tồn tại khi user nhảy từ trang này sang trang khác 
trong ứng dụng. Web server tự động tạo object session khi user chưa có session yêu cầu một 
trang web. Khi session này kết thúc thỡ cỏc biến trong nú được xoá để giải phóng tài 
nguyên. Các biến session có tầm vực trong session đó mà thôi. 
 Cú pháp tổng quát : Session.property / method 
 Các Properties : 
- SessionID: Trả về sessionID cho user. Mỗi session sẽ được server cho một số định 
danh duy nhất khi nó được tạo ra. 
- Timeout : Khoảng thời gian tồn tại của session, tính bằng phút (mặc định 20 phút). 
 Các Methods : 
- Abandon : Xoá bỏ một object session, trả lại tài nguyên cho hệ thống. 
- Ví dụ: Ta có thể tạo các biến trong đối tượng session để lưu thông tin cho mỗi kết nối 
đến Server. 
+ Session(“Login”): Cho biết người yêu cầu truy xuất đến trang có login chưa. 
Session(“Username”): Tên của Account tạo ra session hiện tại. 
+ Session(“SelectedTopic”): Tên chủ đề đang được chọn để thực hiện một thao tác 
nào đó. 
4. Đối tượng Application : 
 Định nghĩa : Ta có thể sử dụng object Application để cho phép nhiều người cùng sử 
dụng một ứng dụng chia sẻ thông tin với nhau. Bởi vỡ object Application được dùng chung 
bởi nhiều người sử dụng, do đó object có 2 method Lock và Unlock để cấm không cho 
nhiều user đồng thời thay đổi property của object này, các biến Application là toàn cục, có 
tác dụng trên toàn ứng dụng. 
 Cú pháp tổng quát : Application.Method 
 Các Methods : 
- Lock : Phương pháp này cấm không cho client khác thay đổi property của đối tượng 
Application. 
- Unlock : Phương pháp này cho phép client khác thay đổi property của đối tượng 
Application. 
- Events : gồm có hai event được khai báo trong file Global.asa. Ngoài ra chúng ta có 
thể đặt các biến trong đối tượng Application để lưu những thông tin toàn cục, hay các cờ 
báo hiệu. 
 Application_Onstart : Xảy ra khi khởi động ứng dụng. 
 Application_OnEnd : Xảy ra khi ứng dụng đóng hay server shutdown. 
- Ví dụ : 
 Application(“DatabaseAccessFlag”) : Cờ cho biết có ai đang truy xuất Database 
không. 
 Application(“AccessNumber”): Số lần truy xuất đến ứng dụng. Khi khởi động / đóng 
ứng dụng giá trị này được cập nhật vào Database. 
 Application(“arrayTopicName”): Biến dóy lưu danh sách các chủ đề hiện có của hệ 
thống. 
Trước khi thay đổi giá trị các biến Application nên Lock lại và sau khi thay đổi nhớ Unlock. 
5. Đối tượng Server : 
 Định nghĩa : Cho phép truy xuất tới các method và property của server nhưng là 
những hàm tiện ích. 
 Cú pháp tổng quát : Server.Method 
 Các Properties: ScriptTimeout : Khoảng thời gian dành cho script chạy. Mặc định 90 
giây. 
 Các Methods : 
- CreateObject : Tạo một instance của server component. 
- HTMLEncode : Mó hoỏ một chuỗi theo dạng HTML. 
- MapPath : Ánh xạ đường dẫn ảo (là đường dẫn tuyệt đối trên server hiện hành hoặc 
đường dẫn tương đối trên trang hiện tại) thành đường dẫn vật lý(physical path). 
- URLencode : mó hoỏ một chuỗi (kể cả ký tự escape) theo quy tắc mó hoỏ URL 
- Ví dụ : : Xác định thời gian chạy tối đa của một 
Script là 30 giây. 
III. Các component của ASP. 
ActiveX Server Component (trước đây được gọi là Automation Server) được thiết kế 
để chạy trên Web Server như là một phần của ứng dụng Web. Component chứa đựng những 
đặc trưng chung mà chúng ta không cần phải tạo lại những đặc trưng này. Component 
thường được gọi từ những file .asp. tuy nhiên, chúng ta có thể gọi những component này từ 
các source khác nhau như là : một ứng dụng ISASP, một server component hoặc một ngôn 
ngữ tương thích OLE(OLE-compatible language). 
ASP cung cấp sẵn 5 ActiveX Server Component, bao gồm : 
- Advertisement Rotator Component. 
- Browser Capabilities Component. 
- Database Access Component. 
- Content Linking Component. 
 - TextStream Component. 
IV. VBSCRIPT 
1. VBScript là gỡ ? 
 VBScript là một thành phần của ngôn ngữ lập trỡnh Visual Basic. VBScript cho 
phộp thờm cỏc Active Script vào cỏc trang Web. Microsoft Internet Explorer 3.0 cú thể 
chạy được các chương trỡnh VBScript chốn vào cỏc trang HTML. Với VBScript ta cú thể 
viết ra cỏc form dữ liệu hay cỏc chương trỡnh Game chạy trên Web. 
2. Sự phát triển của VBScript. 
 VBScript khởi đầu phát triển cho môi trường Client side. VBScript 1.0 được đưa ra 
như là một bộ phận của Internet Explorer 2.0 và VBScriptcung cấp phần lớn các chức năng 
lập trỡnh của ngụn ngữ Visual Basic. Sự khác nhau lớn nhất của VBScript và Visual Basic 
là VBScript ngăn chặn truy xuất file. Bởi vỡ mục tiờu chớnh của việc thiết kế VBScript là 
cung cấp một ngụn ngữ Script mềm dẻo nhưng ngăn ngừa các mục đích phá hoại từ phía 
Browser. 
3. Kiểu dữ liệu của VBScript 
 VBScript có một kiểu dữ liệu duy nhất được gọi là Variant. Variant là một kiểu dữ 
liệu đặc biệt có thể chứa các kiểu thông tin khác nhau tuỳ thuộc vào cách sử dụng nó. 
Variant cũng là kiểu dự liệu duy nhất được trả về bởi tất cả các hàm trong VBScript. 
 Ví dụ một Variant có thể chứa dữ liệu là số hoặc chuỗi, nó được coi là số hoặc là 
chuỗi tuỳ thuộc vào ngữ cảnh sử dụng nó. 
 Variant có thể chứa các kiểu dữ liệu Subtype như trong bảng sau: 
Subtype Diễn giải 
Empty 
Variant mặc định giá trị 0 đối với biến kiểu số hoặc là chuỗi có 
chiều dài là 0 (“”)đối với biến kiểu chuỗi. 
Null Variant là Null 
Boolean True hoặc False 
Byte Chứa integer từ 0 tới 255 
Integer Chứa integer từ -32,768 tới 32,767. 
Long Chứa integer từ -2,147,483,648 tới 2,147,483,647. 
Single 
Chứa số âm từ -3.402823E38 tới -1.401298E-45 hoặc số dương từ 
1.401298E-45 tới 3.402823E38. 
Double 
Chứa số âm từ -1.79769313486232E308 tới -
4.94065645841247E-324 hoặc số dương từ 4.94065645841247E-
324 tới 1.79769313486232E308 
Date 
(Time) 
Chứa một số tượng trưng cho ngày từ 1/1/100 tới 31/12/ 9999. 
String Chứa một chuỗi cú chiều dài cú thể tới khoảng 2 triệu ký tự. 
Object Chứa một object. 
Error Chứa số của lỗi. 
D. Cơ sở dữ liệu sql server 
SQL Server viết tắt bởi : Structure Query Language – ngôn ngữ cấu trúc truy vấn. 
 Microsoft SQL Server 2000 là một công cụ thiết kế, điều khiển và quản trị cơ sở dữ 
liệu, các biến cố server, các MS SQL Server Object và SQL Server với tính thực thi cao. 
1. Mụ hỡnh cơ sở dữ liệu Client-Server 
SQL Server là hệ quản trị cơ sở dữ liệu theo mô hỡnh client-server. Phõn chia cụng 
việc giữa client và server như sau: 
a. Client-side : 
- Phải xác định thông tin cần server cung cấp trước khi gửi yêu cầu tới server. 
- Có trách nhiệm hiển thị toàn bộ thông tin cho user. 
- Phải làm việc với các result set hơn là làm việc trực tiếp trên các bảng của database. 
- Phải làm mọi thao tỏc xử lý dữ liệu. 
- Cung cấp tất cả định dạng của dữ liệu và thông tin cần thiết để tạo report. 
b. Server-side : 
- Database engine đảm nhiệm việc lưu trữ (storage), cập nhật (update) và cung cấp 
(retrieval) thông tin trong hệ thống. 
- Tạo result set theo yêu cầu của ứng dụng client. 
- Không có giao diện người dùng (user interface). Tự thân SQL Server là không có giao 
diện người dùng, ngoại trừ một số tool giúp admin quản trị hệ thống. 
- Hoàn toàn độc lập với các ứng dụng client. 
- Không chịu trách nhiệm việc hiển thị thông tin cho người dùng từ các kết quả thực thi 
các query. 
2. Làm việc với SQL Server 
Client làm việc với SQL Server thông qua 3 phương thức sau : 
- DB-Library 
- ODBC 
- SQL OLE 
a. DB-Library Interface. 
DB- Library hoặc gọi tắt DB-LIB là một thư viện API cho cả hai C và VB cho phép 
làm việc trực tiếp với SQL Server. Thư viện API cung cấp nhiều tool cần thiết giúp ta có thể 
gửi các query và nhận thông tin trả lời từ SQL Server, cũng như cho phép trích lọc dữ liệu 
từ các result set. 
 Để sử dụng DB-LIB cần include những file sau đây vào project: 
C Visual Basic 
SQLDB.H VBSQL.OCX 
SQLFRONT.H VBSQL.BAS 
b. Open Database Connecttivity (ODBC) 
ODBC là một giao diện lập trỡnh (programming interface) cho phộp ứng dụng cú thể 
truy xuất data từ cỏc hệ quản trị cơ sở dữ liệu sử dụng SQL như là phương thức chuẩn để 
truy xuất data. 
ODBC có thể xem như là một lớp trừu tượng những ứng dụng và hệ quản trị cơ sở dữ liệu. 
ODBC chịu trách nhiệm nhận yêu cầu từ ứng dụng và chuyển đổi nó sang ngôn ngữ (SQL) 
mà database engine có thể hiểu được và dùng nó để lấy thông tin từ database. Làm việc với 
ODBC ta chỉ cần viết các phát biểu SQL chuẩn và sau đó chuyển các phát biểu đó đến 
ODBC, toàn bộ công việc hậu trường, làm thế nào để lấy được thông tin từ database do 
ODBC đảm nhiệm. 
Mỗi loại database engine có một ODBC driver tương ứng. Database kết hợp với 
ODBC tương ứng cho nó được gọi là Data Source Name (DSN). Ứng dụng muốn làm việc 
với ODBC trước hết phải mở một connection đến ODBC, trong đó cần khai báo DSN, 
UserID và Password. 
 Web server là client của SQL Server cho dù cùng chạy trên một hệ thống. Các ứng 
dụng Web đều truy xuất database thông qua ODBC, ADO là một ví dụ, các sản phẩm front-
end như Borland’s Delphi, Microsoft Visual Basic đều dùng ODBC để truy xuất SQL 
Server. ODBC thực sự đó trở thành một chuẩn trong việc truy xuất database. 
c. SQL OLEInterface : 
 SQL OLE interface là công cụ phát triển mới cho các nhà phát triển ứng dụng dựa 
trên SQL Server theo tiếp cận hướng đối tượng. SQL OLE interface cho phép ta làm việc 
với SQL Server thông qua sử dụng các object, method và collection của database làm việc. 
3. Bảo mật truy xuất dữ liệu trên SQL Server. 
Khi xây dựng các ứng dụng Web-database, cần chú ý đến việc bảo mật, có 3 mức độ 
bảo mật tại 3 nơi gồm : 
- Web Server (do IIS đảm nhiệm) 
- Hệ điều hành (ở đây là Windows NT Server đảm nhiệm) 
- Truy xuất dữ liệu (do SQL Server đảm nhiệm) 
Mức thứ nhất : Bảo mật trên Web server được kể đến là dịch vụ SSL (Secure Socket 
Layer) cung cấp cơ chế mó hoỏ dữ liệu truyền giữa server và client. 
Múc thứ hai : Windows NT Server kiểm tra account và ngăn cấm các login không 
hợp lệ vào các domain không được phép. 
Mức thứ ba : Là mức truy xuất dữ liệu trên các object của database. 
SQL Server có 3 chế độ bảo mật gồm : 
a. Standard : 
 Là default mode, ở chế độ này SQL Server đảm trách toàn bộ việc quản lý cỏc 
account của nú, SQL Server xỏc nhận một user và kiểm tra password/login trờn tất cả 
connection đến SQL Server. 
b. Windows NT Integrated : 
 Chế độ này sử dụng cơ chế kiểm tra của Windows NT server cho tất cả connection. 
Khi SQL Server chạy ở chế độ này, Windows NT sẽ quản lý tất cả user kết nối vào thụng 
qua ACL (Access Control List) của nó. Tiện ích của chế độ bảo mật này là cho phép user 
sử dụng một password duy nhất để truy xuất tới tài nguyên trong domain và thời gian cũng 
như việc mó hoỏ password qua mạng. Như vậy, user không cần login lần thứ 2 khi truy 
xuất SQL Server. Một user login vào Windows NT server hoặc được gán connection hoặc 
bị từ chối kết nối đến SQL Server dựa trên thuộc tính của account trên NT server. Việc 
gán các quyền truy cập vào SQL Server cho một login vào NT Server tạo ra một login uỷ 
quyền, connection thông qua login được uỷ quyền gọi là kết nối được uỷ thác (trusted 
connection). Khi một user thiết lập được một connection uỷ thác đến SQL Server, user có 
thể : 
- Được gắn với một login của SQL Server hiện hành trên server nếu tên login được so 
trùng với account của user. 
- Kết nối với login mặc định (thường là guest) 
- Kết nối với login SA nếu user là Adminitrator trên NT server. 
 Hầu hết các thao tác gán quyền cho mỗi user như quyền truy xuất vào các bảng, 
view, hay các object khác của database đều được quản lý bằng SQL server giống như trong 
chế độ Standard. 
c. Mixed : 
 Kết hợp cả hai chế độ Standard và Integrated. Khi một user kết nối đến SQL Server 
trong chế độ mixed, trước tiên NT sẽ kiểm tra xem login name đó cú thiết lập một kết nối uỷ 
thỏc nào hay khụng. Nếu khụng tỡm thấy kết nối uỷ thỏc nào thỡ sau đó SQL Server sẽ 
kiểm tra login name và password. Nếu cũng không nhận biết login được yêu cầu trên server, 
truy xuất bị từ chối. 
4. Tạo và quản lý cỏc user account : 
 SQL Server có 2 mức (level) của một user : 
 Mức thứ nhất của user là login. Một login được phép thiết lập một connection với 
SQL Server. Tất cả login được lưu trữ trong bảng SYSLOGINS (nằm trong database 
MASTER). 
 Mức thứ hai của user là user. Mức này SQL dùng để quản lý cỏc quyền truy xuất tới 
cỏc object của SQL Server như : table, view, stored procedure trong một database. 
 Một user có thể ở trong một hoặc nhiều database, nhưng một user phải có một login 
của database mà nó được quyền truy xuất. Tất cả user được lưu trữ trong bảng SYSUSERS 
của mỗi database mà các user có quyền truy xuất. 
SQL tổ chức 2 mức user mục đích cho phép một user có nhiều mức độ truy xuất khác nhau 
trên các database mà user kết nối vào, và vẫn duy trỡ một password duy nhất. Để lmf được 
điều này, một user có một login đi kèm với một password. Khi một login yêu cầu kết nối, 
SQL Server sẽ kiểm tra login này kèm với password. Khi không có một login hợp lệ, user 
không thể tru xuất vào bất cứ database nào trên SQL Server. 
 Khi tạo một login cũng như user của login đó ta có thể sử dụng tiện ích SQL 
Enterprise Manage hoặc sử dụng hàm hệ thống sp_addlogin và sp_adduser, khi sử dụng 
hàm này ta có thể tạo một login từ một connection có qyuền tương đương như SA. Điều này 
rất thuận lợi khi ta viết ứng dụng Web, từ ứng dụng Web ta có thể tạo, xoá, cũng như gán 
quyền cho các user. 
Cú phám của sp_addlogin là : 
 sp_addlogin login_id[,password [,defaultdb [,defaultlanguage]]] 
trong đó : 
- login_id là tên của login sẽ được tạo. 
- password là mật khẩu được gán cho login sẽ tạo, thông số này là tuỳ chọn. 
- defaultdb là tên của database mà login sẽ được làm việc sau khi kết nối vào, nếu để 
NULL thỡ SQL Server sẽ mặc định là MASTER database. 
- defaultlanguage nếu để là NULL thỡ SQL Server sẽ lấy mặc định là default language 
của server 
Cú pháp của sp_adduser là : 
 sp_adduser login_id[,username [,grpname]] 
Trong đó : 
- login_id là tên của login sẽ được thêm vào database, nếu login chưa có thỡ tỏc vụ này 
khụng thành cụng. 
- Username được cung cấp để cho phép login gắn với một database, điều này cho phép 
một login có thể kết nối vào nhiều database khỏc nhau, và với một database thỡ nú cú 
một user. 
- Grpname cho phép định nghĩa tên một nhóm mà user thuộc vào nhóm đó. 
 Để loại bỏ một login hoặc user ta có thể sử dụng các hàm sp_droplogin hay 
sp_dropuser với cú pháp sp_droplogin login_id và sp_dropuser username. 
Sử dụng GROUP để quản lý các user : 
 Một nhúm bao gồm cỏc user cú quyền giống nhau, thay vỡ ta phải gỏn quyền riờng 
cho từng user mỗi khi user đó được tạo, ta chỉ cần tạo nhóm và phân quyền cho nhóm đó, 
nếu có them một user mới, thỡ khi tạo sẽ gắn nú với nhúm đó phõn quyền. 
5. Gán quyền cho user và group : 
Trong SQL Server có các đối tượng như : table, view (bảng ảo), stored procedure, mỗi 
một user hay group sẽ có quyền hạn khác nhau đối với từng object. SQL Server có các 
quyền hạn sau cho mỗi user : 
- SELECT cho phép user có thể đọc dữ liệu từ table hoặc view. Quyền SELECT có thể 
được gán riêng cho từng cột trong table hoặc view. 
- INSERT cho phộp user thờm một dũng mới vào table hoặc view. 
- UPDATE cho phép user thay đổi dữ liệu trong bảng hoặc view. Quyền UPDATE có 
thể được gán riêng cho từng cột. 
- DELETE cho phép user xoá dữ liệu của table hoặc view. 
- EXECUTE cho phép user thi hành một stored procedure. 
- DRI/REFERENCES (Declarative Referential Integrity - DRI) là một phương thức 
duy trỡ ràng buộc toàn ven database, khi được gán quyền này user có thể thêm vào bảng 
một khoá ngoại (foreign key). Một cách khác duy trỡ toàn vẹn dữ liệu là trigger. 
- DLL/Data Definition Language cho phép user có thể tạo mới, thêm vào, hoặc xoá các 
object trong database. Ví dụ : CREATE TABLE, ALTER TABLE, DROP TABLE. 
- ALL cho phép user có toàn quyền trên object. Chỉ có user SA mới có quyền ALL 
khi sử dụng các phát biểu DLL. 
 Sử dụng lệnh GRANT và REVOKE để gán hay loại bỏ một quyền hạn của user 
hay group. 
Trong đó: 
- là danh sách các quyền hạn sẽ được gán hay tước bỏ. Nếu nhiều hơn một quyền thỡ 
cỏc quyền hạn đó được cách nhau bởi dấu phẩy. 
- là tên của table, view, hay stored procedure mà user sẽ được gán quyền hay bị tước 
quyền. 
- là danh sách user hau group sẽ được gán quyền hay bị tước quyền. Giữa các tên 
user hoặc group ngăn cách bằng dấu phẩy. Nếu sử dụng từ khoá PUBLIC thỡ tỏc vụ 
gỏn chung cho toàn bộ cỏc user. 
Phần mềm thiết kế 
- Macromedia MX 2004 
- I I S (Internet Information Services)- Chương trình chạy thử nghiệm 
E. Công cụ mô hình hoá 
Để mô hình hoá và xây dựng tài liệu hệ thống người ta sử dụng một số công cụ tương 
đối chuẩn sau: sơ đồ luồng thông tin IFD, sơ đồ luồng dữ liệu DFD. 
1. Sơ đồ luồng thông tin (IFD – Information Flow Diagram) được dùng để mô tả hệ thống 
thông tin theo cách thức động. Tức là mô tả sự di chuyển của dữ liệu, việc xử lý, việc lưu 
trữ trong thế giới vật lý bằng các sơ đồ. 
Các ký pháp của sơ đồ luồng thông tin như sau: 
- Xử lý 
- Kho dữ liệu 
- Dòng thông tin - Điều khiển 
2. Sơ đồ luồng dữ liệu (DFD – Data Flow Diagram) dùng để mô tả hệ thống thông tin như 
sơ đồ luồng thông tin nhưng trên góc độ trừu tượng. Trên sơ đồ chỉ bao gồm các luồng dữ 
liệu, các xử lý, các lưu trữ dữ liệu, nguồn và đích nhưng không hề quan tâm tới nơi, thời 
điểm và đối tượng chịu trách nhiệm xử lý. Sơ đồ luồng dữ liệu chỉ đơn thuần mô tả hệ thống 
thông tin làm gì và để làm gì. 
 Ký pháp dùng cho sơ đồ luồng dữ liệu : 
Giao tác người 
– máy 
Thủ 
công 
Tin học hoá 
hoàn toàn 
Thủ 
công 
Tin học 
hoá 
Điều khiển 
Ngôn ngữ sơ đồ luồng dữ liệu DFD sử dụng 4 loại ký pháp cơ bản: thực thể, tiến trình, kho 
dữ liệu, dòng dữ liệu. 
Nguồn hoặc đích 
Dòng dữ liệu 
 Tiến trình xử lý 
Kho dữ liệu 
- Các mức của DFD: Sơ đồ ngữ cảnh (Context Diagram) thể hiện rất khái quát nội dung 
chính của hệ thống thông tin. Sơ đồ này không đi vào chi tiết mà mô tả sao cho cần một lần 
nhìn là nhận ra nội dung của hệ thống. Để cho sơ đồ ngữ cảnh sáng sủa, dễ nhìn, có thể bỏ 
qua các kho dữ liệu; bỏ qua các xử lý cập nhật. Sơ đồ khung cảnh còn được gọi là sơ đồ 
mức 0. 
- Phân rã sơ đồ: Để mô tả hệ thống chi tiết hơn người ta dùng kỹ thuật phân rã 
(Explosion) sơ đồ. Bắt đầu từ sơ đồ khung cảnh, người ta phân rã ra thành sơ đồ mức 0, tiếp 
sau mức 0 là mức 1… 
- Một số quy ước và quy tắc liên quan tới DFD: 
 + Mỗi luồng dữ liệu đều phải có tên, trừ luồng giữa xử lý và kho dữ liệu. 
+ Xử lý luôn phải được đánh mã số. 
+ Vẽ lại các kho dữ liệu để các luồng dữ liệu không cắt nhau. 
 + Dữ liệu chứa trên hai vật mang khác nhau nhưng luôn đi cùng nhau thì có thể tạo ra 
chỉ một luồng duy nhất. 
 + Tên cho xử lý phải là một động từ. 
 + Xử lý buôc phải thực hiện một biến đổi dữ liệu. Luồng vào phải khác với luồng ra 
từ một xử lý. 
 + Thông thường một xử lý mà logic xử lý của nó được trình bày bằng ngôn ngữ có 
cấu trúc chỉ chiếm một trang giấy thì không phân rã tiếp. 
 + Cố gắng chỉ để tối đa 7 xử lý trên một trang DFD. 
 + Tất cả các xử lý trên một DFD phải thuộc cùng một mức phân rã. 
Tên bộ 
phận 
Tên 
tiến 
trình 
xử lý 
Tệp dữ 
 + Luồng vào của một DFD mức cao phải là luồng vào của một DFD con mức thấp 
nào đó. Luồng ra tới đích của một DFD con phải là luồng ra tới đích của một DFD mức lớn 
hơn nào đó. Đây còn gọi là nguyên tắc cân đối (Balancing) của DFD. 
 + Xử lý không phân rã tiếp thêm thì gọi là xử lý nguyên thuỷ. Mỗi xử lý nguyên thuỷ 
phải có một phích xử lý logic trong từ điển hệ thống. 
 Sơ đồ luồng thông tin và sơ đồ luồng dữ liệu là hai công cụ thường dùng nhất để 
phân tích và thiết kế hệ thống thông tin. Chúng thể hiện hai mức mô hình và hai góc nhìn 
động và tĩnh về hệ thống. 
 Động Tĩnh 
Vật lý 
IFD 
(Information Flow Diagram) 
Sơ đồ luồng thông tin 
SD 
(System Dictionary) 
Từ điển hệ thống, 
các phích vật lý 
Logic 
DFD 
(Data Flow Diagram) 
Sơ đồ luồng dữ liệu 
SD 
(System Dictionary) 
Từ điển hệ thống, 
các phích logic 
Các công cụ phân tích và thiết kế hệ thống thông tin 
Phần III 
 Phân tích và thiết kế hệ thống 
I. PHÂN TÍCH HỆ THỐNG THễNG TIN QUẢN Lí THƯ VIỆN 
1. Sơ đồ luồng thông tin IFD 
* Chức năng Đăng nhập 
Thời điểm Chương trỡnh Người dùng 
Quản trị, thủ thư đăng 
nhập vào chương trỡnh 
Sau khi nhập đầy đủ 
thông tin truy nhập 
Đó kiểm tra đúng thông 
tin để đăng nhập 
Hiển thị 
form Đăng 
nhập 
Nhập Thông 
tin truy 
nhập 
Kiểm tra 
thông tin 
hợp lệ 
Hiển thị Trang 
quản trị thông 
tin website 
Đăng nhập 
hệ thống 
* Chức năng quản lý thông tin trên website 
Thời điểm Chương trỡnh Người dùng 
Đăng nhập trang quản trị 
Lựa chọn trang cập nhật 
thông tin 
Hoàn thành việc cập 
nhật thông tin 
Quản trị cần sửa, xoá 
thông tin 
Hoàn thành việc sửa xoá 
thông tin 
* Chức năng Tỡm kiếm sách 
Hiển thị 
trang quản 
trị hệ thống 
Chọn chức 
năng cập 
nhật 
Hiển thị 
Trang cập 
nhật thông 
Lưu 
dữ 
liệu 
Cập nhật 
thông tin 
Lựa chọn 
thông tin 
cần sửa, 
xoá 
Thông báo 
Lưu 
dữ 
liệu 
Kiểm tra 
thông tin 
Thông báo 
Thời điểm Chương trỡnh Người dùng 
Người dùng cần Tỡm 
kiếm 
Người dùng lựa chọn 
cách, tiêu chí tỡm kiếm 
Thông tin đó được tích 
hợp 
Hoàn thành việc tỡm 
kiếm 
Chọn chức 
năng tỡm kiếm 
Hiển thị 
chức năng 
tỡm kiếm 
Lưu 
trữ 
dữ 
Chọn tiờu chớ 
tỡm kiếm 
Thông báo 
kết quả 
Tổng hợp 
thông tin 
Đưa ra kết 
quả tỡm kiếm 
2. Sơ đồ chức năng BFD 
3. Sơ đồ luồng dữ liệu DFD 
3.1. Sơ đồ ngữ cảnh 
Hệ thống quản 
lý thư viện 
Cấp 
thẻ 
Thống 
kê báo 
Cho 
mượn 
sách 
Nhận 
trả 
sách 
Thêm 
sách 
mới 
Quản lý 
Thư 
viện 
Ban quản lý 
BP.Cấp 
thẻ Độc 
giả Yêu 
Kết 
Yêu 
cầu 
báo 
Báo 
cáo 
BP.Bổ sung tài 
liệu 
Thủ thư 
Yêu 
Kết 
Kết 
quả 
Yêu 
cầu 
3.2. Sơ đồ DFD mức 0 
3.3. Phân rã sơ đồ DFD 
Yêu 
cầu 
cấp 
thẻ
Ban quản 
lý 
BP.Bổ 
sung tài 
liệu 
5.0 
Thống 
kê 
báo cáo 
4.0 
Thêm 
sách 
mới 
2.0 
Cho 
mượn 
sách 
1.0 
Cấp 
thẻ 
Phiếu 
mượn 
Hồ sơ 
cấp 
thẻ 
Hồ sơ xử 
lý vi 
phạm Hồ sơ quản lý 
sỏch 
Kho 
sách 
Fic lưu 
thông tin 
sách 
Thẻ/ 
Không 
chấp 
nhận 
Yêu 
cầu 
thôn
g 
Báo 
cáo 
Phiếu mượn 
Hồ sơ xử lý vi 
phạm 
Yêu cầu 
thêm 
Không chấp 
nhận 
Thủ 
thư 
Yêu 
cầu 
tạo 
phiếu
mượn 
sách 
Thông 
tin 
sách/ 
Không 
chấp 
nhận 
3.0 
Nhận 
sách 
trả 
Thẻ 
Phạt/Khô
BP.Cấp thẻ Độc 
giả 
Thủ 
thư 
Sơ đồ DFD mức 1 (1.0 – Cấp thẻ) 
Sơ đồ DFD mức 1 (2.0 - Quản lý thông tin sinh viên) 
Sơ đồ DFD mức 1(3.0 Nhận trả sách) 
1.0 
Kiểm 
tra 
BP.Cấp thẻ 
Hồ sơ cấp thẻ 
Yêu 
cầu 
cấp 
thẻ 
Không 
chấp 
nhận 
Hồ sơ xử lý vi 
phạm 
2.0 
Tạo 
thẻ Chấp nhận 
Thẻ 
2.3 
Tạo 
phiếu 
mượn 
2.1 
Kiểm 
mượn 
sách 
Thẻ, 
Yêu 
cầu 
mượn 
sách 
Khôn
g 
chấp 
nhận 
Chấp nhận 
Vị trí để sách 
Hồ sơ cấp 
Phiếu 
Thủ thư 
Hồ sơ 
quản lý 
Kho sách
2.2 
Tỡm 
sỏch 
Sách 
Fic lưu thông tin 
sách 
Sơ đồ DFD mức 1 (4.0 – Thêm sách mới) 
Sơ đồ DFD mức 1 (5.0 – Thống kê báo cáo) 
BP.Bổ sung 
tài liệu 
4.1 
Kiểm 
tra 
4.2 
Cập 
nhật 
Kho 
sách 
Yêu 
cầu 
bổ 
sung 
sách 
Không 
chấp 
nhận 
Chấp 
nhận 
Hồ sơ quản lý 
sỏch 
Phích lưu thông 
tin sách 
4.3 
Hiệu 
chỉnh 
Yêu 
cầu 
hiệu 
chỉnh 
sách sách đó 
 hiệu 
chỉnh 
Phiếu 
mượn 
Hồ sơ xử lý vi 
phạm 
3.1 
Kiểm 
tra 
Thủ 
thư 
Thẻ 
không 
chấp 
nhận 
Kho sách 
Hồ sơ quản 
lý sỏch 
3.2 
Nhận 
sách Chấp 
nhận 
II. Thiết kế hệ thống thông tin quản lý THƯ VIỆN 
1. Mô hình hoá dữ liệu bằng sơ đồ ERD 
Môn 
loại 
Đọc giả Phiếu có có 
Khóa 
có 
Ngôn ngữ có 
Tác gỉa 
Viế
N 1 
có 
Sách 
N 1 
Nhà xuất 
bản 
N 
1 
N 
1 
N 1 
có Loại 
sách 
có 
N N 
1 1 
N 
1 
Ban quản 
lý 
5.1 
In báo 
cáo 
Hồ sơ quản lý 
Yêu cầu báo 
Phiếu Hồ sơ xử lý vi 
Báo 
Hồ sơ cấp 
2. Thiết kế chi tiết các tệp cơ sở dữ liệu 
a) Bảng DOCGIA 
STT Tên trường Kiểu dữ liệu Kích thước Mô tả 
1 MaDG AutoNumber 6 Mã hoá độc giả 
2 KhoaHoc Text 2 Khoá học 
3 MSV Text 7 Mã hoá Sinh viên 
4 HoTenDG Text 50 Họ tên độc giả 
5 NgaySinh Date/time Ngày sinh 
6 NoiSinh Text 50 Nơi sinh 
7 Lop Text 50 Tên lớp 
8 NamHoc AutoNumber 50 Năm học 
9 NgayLT Date/time Ngày làm thẻ 
10 NgayHH Date/time Ngày hết hạn 
b) Bảng NXB 
STT Tên trường Kiểu dữ liệu Kích thước Mô tả 
1 MaNXB AutoNumber 3 Mã hoá NXB 
2 TenNXB Text 50 Tên NXB 
3 DiaChi Text 100 Địa chỉ NXB 
4 Tel AutoNumber 10 Điện thoại 
c) Bảng PHIEUMUON 
STT Tên trường Kiểu dữ liệu Kích thước Mô tả 
1 MaPM AutoNumber Longinteger Mã hoá Phiếu mượn 
2 MaDG Text 6 Mã hoá Độc giả 
3 MaS Text 10 Mã hoá sách 
4 NgMuon Date/Time Ngày Mượn 
5 NgayTra Date/Time Ngày Trả 
6 TienPhat AutoNumber Double Tiền bị phạt 
d) Bảng SACH 
STT Tên trường Kiểu dữ liệu Kích thước Mô tả 
1 MaS Text 10 Mã hoá sách 
2 MaPL Text 2 Mã hoá phân loại 
3 MaML Text 2 Mã hoá môn loại 
4 MaTG Text 5 Mã hoá tác giả 
5 MaNN Text 3 Mã hoá ngôn ngữ 
6 MaNXB Text 3 Mã hoá nhà xuất bản 
7 MaVT Text 10 Mã hoá vị trí 
8 TenS Text 100 Tên sách 
9 SoTrang Number Long Integer Số trang 
10 NamXB Number Integer Năm xuất bản 
11 SoLuong Number Long Integer Số lượng sách 
12 SoCon Number Integer Số lượng sách còn 
13 NgayNhap Date/Time Ngày nhập 
14 GiaTien Number Long Integer Giá tiền của sách 
15 GhiChu Memo Ghi chú 
16 LanMuon Text 5 Số lần mượn 
17 Hinh Text 50 Hinh dạng sách 
e) Bảng VITRI 
STT Tên trường Kiểu dữ liệu Kích thước Mô tả 
1 MaVT Text 8 Mã hoá vị trí 
2 Khu Text 2 Khu vực để sách 
3 Ke Text 2 Kệ sách 
4 Ngan Text 2 Ngăn sách 
f) Bảng NGONNGU 
STT Tên trường Kiểu dữ liệu Kích thước Mô tả 
1 MaNN Text 3 Mã ngôn ngữ sách 
2 TenNN Text 50 Tên ngôn ngữ sách 
g) Bảng KHOA 
STT Tên trường Kiểu dữ liệu Kích thước Mô tả 
1 KhoaHoc Text 2 Mã Khoá học 
i) Bảng DANGKY 
STT Tên trường Kiểu dữ liệu Kích thước Mô tả 
1 MaNV Text 3 Mã nhân viên 
2 HoTenNV Text 50 Họ tên nhân viên 
3 UserName Text 20 Họ tên người dùng 
4 Password Text 15 Mật khẩu 
5 DiaChiNV Text 100 Địa chỉ nhân viên 
6 EmailNV Text 50 Hộp thư của nhân viên 
7 TenNV Text 50 Tên nhân viên 
8 NgaySinhNV Date/Time Ngày sinh nhân viên 
9 GioiTinhNV Yes/No Giới tính nhân viên 
10 Quyen Text 10 Quyền 
k) Bảng LYDO 
STT Tên trường Kiểu dữ liệu Kích thước Mô tả 
1 MaLD Text 2 Mã lý do 
2 TenLD Text 50 Tên lý do 
l) Bảng MONLOAI 
STT Tên trường Kiểu dữ liệu Kích thước Mô tả 
1 MaML Text 2 Mã môn loại 
2 TenML Text 20 Tên môn loại 
m) Bảng TACGIA 
STT Tên trường Kiểu dữ liệu Kích thước Mô tả 
1 MaTG Text 5 Mã Tác Giả 
2 TenTG Text 50 Tên Tác Giả 
n) Bảng PHANLOAI 
STT Tên trường Kiểu dữ liệu Kích thước Mô tả 
1 MaPL Text 2 Mã Phân Loại 
2 TenPL Text 20 Tên Phân Loại 
q) Bảng BIENLAIDENTLY 
STT Tên trường Kiểu dữ liệu Kích thước Mô tả 
1 SOBIENLAI text 10 Số biên lai 
2 MADG text 6 Mã độc giả 
3 MAS text 10 Mã sách 
4 MALD text 2 Mã lý do 
5 NGAYLAP Datetime Ngày lập biên lai 
3. Sơ đồ quan hệ thực thể của hệ thống 
III. Thiết kế giải thuật 
Thuật toán là một trong những khái niệm cơ sở của toán học. Suốt một thời 
gian dài của lịch sử phát triển toán học, khái niệm thuật toán được hiểu theo nghĩa 
trực giác như sau: Thuật toán là một hệ thống chặt chẽ và rõ ràng các quy tắc nhằm 
xác định một dãy các thao tác trên những đối tượng sao cho sau một số hữu hạn 
bước thực hiện các thao tác ta đạt được mục tiêu định trước. 
Để biểu diễn và tư duy thuật toán người ta xây dựng các ngôn ngữ cho nó 
và gọi là các ngôn ngữ thuật toán. Một trong những ngôn ngữ có tính trực quan 
cao, và đối với các thuật toán nhỏ có thể cho chúng ta hoàn cảnh của quá trình xử 
lý đó là sơ đồ khối thuật toán. 
Sơ đồ khối thuật toán được tạo lập từ các khối cơ bản sau đây: 
- Khối đầu thuật toán: thường là hình tròn có viết chữ B ở bên trong ứng với 
bước đầu tiên của thuật toán. Chỉ có mũi tên đi ra khối bắt đầu, không có đi vào. 
B 
- Khối thao tác: là khối hình chữ nhật trong đó ghi các lệnh cần thực hiện. 
- Khối điều kiện: là khối hình thoi hoặc hình elíp bên trong có ghi các điều 
kiện cần kiểm tra. 
- Khối nhập: là khối đưa thông tin vào để thực hiện quá trình xử lý. 
- Khối xuất thông tin: là khối đưa thông tin ra sau khi xử lý hoặc kiểm tra 
điều kiện. 
- Khối cuối: còn gọi là khối kết thúc, thường là khối tròn có viết chữ E hoặc 
K ở bên trong. Chỉ có mũi tên đến, không có mũi tên đi ra. 
E K 
Y 
N 
Y 
N 
1. Thật toán đăng nhập 
S 
Đ 
B Đ 
Vào form 
đăng nhập 
Kiểm tra 
thông tin 
có hợp lệ 
không 
Vào quản trị 
hệ thống 
Tiếp tục 
đăng 
nhập 
KT 
S 
Đ 
Nhập tên 
truy nhập 
và mật 
khẩu 
Thông báo 
thông tin 
nhập sai 
2. Thật toán cập nhật thông tin 
S 
Đ 
B Đ 
Vào form cập 
nhật 
Kiểm tra 
tính phù 
hợp 
Cập nhật thông 
tin vào CSDL 
Tiếp tục 
cập nhật 
KT 
S 
Đ 
Nhập 
thông tin 
Thông báo dữ 
liệu không hợp 
lệ 
3. Thuật toán tìm kiếm 
Iv. Thiết kế giao diện làm việc của website TRA CứU ĐIểM SINH VIÊN 
B Đ 
Vào form tìm 
kiếm 
Lựa chọn các 
tiêu chí tìm 
kiếm 
Hiển thị kết 
quả tìm kiếm 
Tìm 
kiếm 
KT 
S 
Đ 
Tiếp tục 
tìm kiếm 
Đ 
S 
Thông báo 
không tìm kiếm 
thấy 
1) Trang chủ 
2) Giới thiệu 
3) Hướng dẫn 
4) Liên hệ 
5) Trang Tra cứu sách 
6) Kết quả tra cứu sách theo phân loại sách 
7) Tìm kiếm sách theo chữ cái đầu tên tác giả 
8) Trang quản trị 
9) Quản lý thống kê 
10) Thống kê sách hiện có 
 11) Thống kê nhân viên trong thư viện 
12) Thống kê độc giả 
13) Thêm độc giả 
14) Quản lý sách 
Kết luận 
 “Website quản lý thư viện trường đại học kinh tế quốc dân” sau một thời 
gian phân tích và thiết kế đã đạt được những mục tiêu đề ra. Hy vọng rằng những 
gì em làm được phần nào góp phần giúp cho việc quản lý thư viện trường cũng 
như công tác mượn và trả sách được thực hiện tốt hơn. 
Chương trình đã đạt được kết quả như sau: 
- Việc quản lý sách hiệu quả và tiện lợi hơn. 
- Cho phép lưu trữ và cập nhật sách mới một cách dễ dàng với khối lượng 
lớn. 
- Hỗ trợ cách tìm kiếm sách khác nhau, các loại thống kê khác nhau. 
- Thao tác tốt, cung cấp thông tin nhanh chóng, kịp thời và chính xác cho 
quá trình cho mượn và trả sách. 
Website đang trong giai đoạn phát triển. Một mặt vì thời gian không cho 
phép và những hạn chế về công nghệ và kỹ năng làm web nên trong Web site còn 
một số phần chưa được hoàn thiện. Trong tương lai em sẽ tiếp tục hoàn thiện và 
thêm nhiều chức năng mới tối ưu hơn. 
Tài liệu tham khảo 
1- “Thiết kế trang web động với DHTML”, Nguyễn Trường Sinh, NXB Lao 
Động – Xó Hội. 
2- “Phân tích thiết kế hệ thống thông tin quản lý”, Thạc sĩ Đinh Thế Hiển, 
NXB Thống Kê. 
3- “Những bài thực hành ASP”, VN-GUIDE, NXB Thống Kê. 
4- “Active Server Pages ASP 3.0 ASP.NET ”, Nguyễn Phương Lan, NXB Giáo 
Dục. 
5- “ Những bài thực hành HTML”, VN-GUIDE, NXB Thống Kê. 
6- “Tự học Mcrosoft SQL Server 7.0”, Nguyễn Văn Hoàng, NXB Thống Kê. 
7- TS. Trương Văn Tú – TS. Trần Thị Song Minh 
 “Giáo trình Hệ thống thông tin quản lý”, NXB Hà Nội, 2000. 
8- GS. TS Hàn Viết Thuận, 
 “Giáo trình Cấu trúc dữ liệu”, NXB Thống kê, 1999. 
Phụ lục 
i. hướng dẫn cài đặt và sử dụng 
1. Cài IIS (Interner Information Server) 
Máy chạy Windows XP hoặc Windows2000 
- Vào Control Panel  Add or Remove Program 
 Add/Remove Windows components 
Màn hình hiện lên một danh mục các sự lựa chọn. 
Chọn: Internet Information Server(IIS) 
Cho Đĩa Windows XP hoặc Đĩa Windows 2000 vào ổ CD Rom 
Sau đó Click Next  Sẽ cài được chương trình chạy thử Website. Trên ổ C sẽ xuất 
hiện thư mục: Inetpub 
2. Cài SQL Server2000 
3. Copy thư mục hung trên CD vào thư mục: 
C:\Inetpub\wwwroot\hung 
4. Trong biểu tượng Internet Explorer (hình chữ e ) 
* Cách vào trang chính của Website: có 2 cách 
Cách 1: Chọn Tools  Internet Option. Trong mục chọn General. Đánh vào mục 
Address:  và click Apply 
Sau đó thoát ra và Click vào biểu tượng Enternet Explorer (hình chữ e ) 
Cách 2: Tại mục Address của Internet Explorer gõ  và ấn 
Enter. 
* Vào trang quản trị hệ thống bằng: 
Tên truy nhập: hung 
Mật khẩu: hung 
* Vào trang quản lý thư viện bằng: 
Tên truy nhập: teo 
Mật khẩu: teo 
5. Chỉnh Font mặc định cho Website: 
- Mở biểu tượng Internet Explorer (e)  chọn Tools  chọn Internet Options… 
 chọn Fonts… 
 ở mục Web page font chọn: Times New Roman 
- Sử dụng tiếng Việt trong Website: dùng font Unicode để đánh tiếng Việt. 
II. Code tiêu biểu 
1) Tìm kiếm độc giả 
Tim 
function Closer() 
{ 
 window.close(); 
} 
<!-- 
Sub TimTiep1 
 call FRMtimtiep1.submit() 
End Sub 
Sub TimTiep2 
 call FRMtimtiep2.submit() 
End Sub 
Sub TimTiep3 
 call FRMtimtiep3.submit() 
End Sub 
Sub TimTiep4 
 call FRMtimtiep4.submit() 
End Sub 
Sub Khongthay1 
 call FRMkhongthay1.submit() 
End Sub 
Sub Khongthay2 
 call FRMkhongthay2.submit() 
End Sub 
Sub Khongthay3 
 call FRMkhongthay3.submit() 
End Sub 
Sub Khongthay4 
 call FRMkhongthay4.submit() 
End Sub 
--> 
<% 
timdocgia=trim(Request.Form("txttimdocgia")) 
STT=0 
cbotimdocgia=trim(Request.Form("cbotimdocgia")) 
strconn="Provider=SQLOLEDB.1;Persist Security Info=False;User 
ID=sa;PWD=sa;Initial Catalog=qltv " 
set objConn=server.createObject ("ADODB.connection") 
set objRsTT1 =server.createObject ("ADODB.recordset") 
set objRsTT2 =server.createObject ("ADODB.recordset") 
set objRsTT3 =server.createObject ("ADODB.recordset") 
set objRsTT4 =server.createObject ("ADODB.recordset") 
objConn.Open strconn 
Select Case cbotimdocgia 
Case "MADG" 
sqlSelect1="SELECT * FROM DOCGIA Where "+cbotimdocgia+" = 
'"&timdocgia&"'" 
objRsTT1.open sqlSelect1,objConn 
%> 
<% 
if objRsTT1.BOF = TRUE then %> 
 Khụng tỡm thấy độc giả cú mó số 
<form method="POST" action="Timdocgia.asp" target="main" 
name="FRMkhongthay1"> 
 <button type="normal" onclick="Khongthay1()" name="tim" value ="OK" 
Accesskey=O style="font-style:normal; font-variant:normal; font-size:10pt; font-
family:Times New Roman; width:70; height:24" tabindex=3> 
 OK 
 <%Response.End 
else 
%> 
 <font 
color=#FF0000 > Kết quả tỡm độc giả cú mó số <%Response.Write 
(""&timdocgia&"")%> 
<font 
size="2">STT 
Mó Độc 
Giả 
Họ Tờn Độc 
Giả 
Mó Sinh 
Viờn 
Lớp 
Học 
Khoỏ 
Học 
Ngày Lập 
Thẻ 
<font 
size="2">Remove 
<% 
objRsTT1.MoveFirst 
do while not objRsTT1.EOF 
STT=STT+1 
Response.Write(" "&stt&"") 
%> 
  
  
  
  
  
  
.<%=month(objRsTT1("NGAYLT"
))%>. 
  
">delete 
<% 
objRsTT1.MoveNext 
loop 
end if 
%> 
<form method="POST" action="timdocgia.asp" target="main" 
name="FRMtimtiep1"> 
 <button type="normal" onclick="TimTiep1()" name="tim" value ="Trở Về" 
Accesskey=h style="font-style:normal; font-variant:normal; font-size:10pt; font-
family:Times New Roman; width:70; height:24" tabindex=3> 
 Thoỏt 
<% 
Case "HOTENDG" 
sqlSelect2="SELECT * FROM DOCGIA Where "+cbotimdocgia+" 
='"&timdocgia&"'" 
objRsTT2.open sqlSelect2,objConn 
%> 
<% 
if objRsTT2.BOF = TRUE then %> 
 Khụng tỡm thấy độc giả cú họ tờn 
<form method="POST" "timdocgia.asp" target="main" name="FRMkhongthay2" 
action="timdocgia.asp"> 
 <button type="normal" onclick="Khongthay2()" name="tim" value ="OK" 
Accesskey=O style="font-style:normal; font-variant:normal; font-size:10pt; font-
family:Times New Roman; width:70; height:24" tabindex=3> 
 OK 
 <%Response.End 
else 
%> 
 <font 
color=#FF0000 > Kết quả tỡm độc giả cú họ tờn <%Response.Write 
(""&timdocgia&"")%> 
STT 
Mó Độc 
Giả 
Họ Tờn Độc 
Giả 
Mó Sinh 
Viờn 
Lớp 
Học 
Khoỏ 
Học 
Ngày Lập 
Thẻ 
<font 
size="2">Remove 
<% 
objRsTT2.MoveFirst 
do while not objRsTT2.EOF 
STT=STT+1 
Response.Write(" "&stt&"") 
%> 
  
  
  
  
  
  
  
">delete 
<% 
objRsTT2.MoveNext 
loop 
end if 
%> 
<form method="POST" action="Timdocgia.asp" target="main" 
name="FRMtimtiep2"> 
 <button type="normal" onclick="TimTiep2()" name="tim" value ="Trở Về" 
Accesskey=h style="font-style:normal; font-variant:normal; font-size:10pt; font-
family:Times New Roman; width:70; height:24" tabindex=3> 
 Thoỏt 
<% 
Case "LOP" 
sqlSelect3="SELECT * FROM DOCGIA Where "+cbotimdocgia+" 
='"&timdocgia&"'" 
objRsTT3.open sqlSelect3,objConn 
%> 
<% 
if objRsTT3.BOF = TRUE then %> 
   
 Khụng tỡm thấy độc giả học lớp <%Response.Write 
(""&timdocgia&"")%> 
<form method="POST" action="Timdocgia.asp" target="main" 
name="FRMkhongthay3"> 
 <button type="normal" onclick="Khongthay3()" name="tim" value ="OK" 
Accesskey=O style="font-style:normal; font-variant:normal; font-size:10pt; font-
family:Times New Roman; width:70; height:24" tabindex=3> 
 OK 
 <%Response.End 
else 
%> 
 <font 
color=#FF0000 > Kết quả tỡm độc giả học lớp <%Response.Write 
(""&timdocgia&"")%> 
<td width="31" align="center" style="border-right-style: solid; border-right-width: 
1"> 
STT 
<td width="65" align="center" style="float: right; border-left-style: solid; border-
left-width: 1"> 
 Mó Độc Giả 
Họ Tờn Độc 
Giả 
Mó Sinh 
Viờn 
Lớp 
Học 
Khoỏ 
Học 
Ngày Lập 
Thẻ 
<font 
size="2">Remove 
<% 
objRsTT3.MoveFirst 
do while not objRsTT3.EOF 
STT=STT+1 
Response.Write(" "&stt&"") 
%> 
  
  
  
  
  
  
.<%=month(objRsTT3("NGAYLT"
))%>. 
  
">delete 
<% 
objRsTT3.MoveNext 
loop 
end if 
%> 
<form method="POST" action="Timdocgia.asp" target="main" 
name="FRMtimtiep3"> 
 <button type="normal" onclick="TimTiep3()" name="tim" value ="Trở Về" 
Accesskey=h style="font-style:normal; font-variant:normal; font-size:10pt; font-
family:Times New Roman; width:70; height:24" tabindex=3> 
 Thoỏt 
<% 
Case "KHOAHOC" 
sqlSelect4="SELECT * FROM DOCGIA Where "+cbotimdocgia+" 
='"&timdocgia&"'" 
objRsTT4.open sqlSelect4,objConn 
%> 
<% 
if objRsTT4.BOF = TRUE then %> 
   
 Khụng tỡm thấy độc giả học khoỏ <%Response.Write 
(""&timdocgia&"")%> 
<form method="POST" action="Timdocgia.asp" target="main" 
name="FRMkhongthay4"> 
 <button type="normal" onclick="Khongthay4()" name="tim" value ="OK" 
Accesskey=O style="font-style:normal; font-variant:normal; font-size:10pt; font-
family:Times New Roman; width:70; height:24" tabindex=3> 
 OK 
 <%Response.End 
else 
%> 
 <font 
color=#FF0000 > Kết quả tỡm độc giả học khoỏ <%Response.Write 
(""&timdocgia&"")%> 
STT 
Mó Độc Giả 
Họ Tờn Độc Giả 
Mó Sinh Viờn 
Lớp Học 
Khoỏ Học 
Ngày Lập Thẻ 
Remove 
<% 
objRsTT4.MoveFirst 
do while not objRsTT4.EOF 
STT=STT+1 
Response.Write(" "&stt&"") 
%> 
  
  
  
  
  
  
  
">delete 
<% 
objRsTT4.MoveNext 
loop 
end if 
%> 
<form method="POST" action="Timdocgia.asp" target="main" 
name="FRMtimtiep4"> 
 <button type="normal" onclick="TimTiep4()" name="tim" value ="Trở Về" 
Accesskey=h style="font-style:normal; font-variant:normal; font-size:10pt; font-
family:Times New Roman; width:70; height:24" tabindex=3> 
 Thoỏt 
            Các file đính kèm theo tài liệu này:
 LUẬN VĂN- Xây dựng website quản lý thư viện trường đại học Kinh tế Quốc dân.pdf LUẬN VĂN- Xây dựng website quản lý thư viện trường đại học Kinh tế Quốc dân.pdf