Tải bản đầy đủ (.doc) (81 trang)

phân tích thiết kế và xây dựng chương trình quản lý thông tin thư viện đại học quốc gia hà nội

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 (1.43 MB, 81 trang )

Chơng trình quản lý thông tin th viện

Trớc tiên Em xin gửi lời ơn tới các thầy, cô giáo
trong khoa Công Nghệ trờng Đại Học Quốc Gia Hà Nội,
những ngời đã truyền cho em kiến thức trong thời gian học
tập.
Em xin chân thành cảm ơn PGS.TS Vũ Đức Thi đã
tận tình chỉ bảo em trong suốt quá trình làm khoá luận tốt
nghiệp, đồng thời em cũng xin cảm ơn tới anh Lê Mai Anh
và các anh trong công ty FPT đã tạo điều kiện giúp đỡ em
về mặt phơng tiện và hỗ trợ về mặt kỹ thuật để em nhanh
chóng hoàn thành khoá luận tốt nghiệp.
Cuối cùng em xin cảm ơn các bạn bè đã cho em
những ý kiến góp ý chân thành để có đợc bài khoá luận tốt
nghiệp hoàn chỉnh.
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
1
Chơng trình quản lý thông tin th viện



!"#$%
1.1.Các khái niệm về cơ sở dữ liệu(CSDL): 6
1.2. Các khái niệm về cơ sở dữ liệu quan hệ 8
1.2.1.Thuộc tính : 8
1.2.2. Quan hệ: 9
1.2.3. Phụ thuộc hàm (Functional dependency ) 9
1.2.4. Sơ đồ quan hệ (Relation schema) 10
1.2.5 Khoá: 10
1.2.6. Hệ tiên đề cho phụ thuộc hàm 11
1.3. Chuẩn hoá các quan hệ và sơ đồ quan hệ 11


1.3.1. Các định nghĩa về dạng chuẩn trong quan hệ 12
1.3.2. Thực hiện chuẩn hoá 13
1.3.3. Liên kết các quan hệ : 15
&'()"'"*'*+,-./01('*+!
2.1. Giới thiệu về World Wide Web.(WWW) 16
2.1.1. Mô hình Client/Server 16
2.1.2. Ưu nhợc điểm chính của mô hình Client/Server 16
2.1.3. Mô hình World Wide Web (Web Client/Server) 17
2.2. Những khái niệm cơ bản về World Wide Web 18
2.2.1.Địa chỉ trên Web 18
2.2.2. Web Server 18
2.2.3. Web Client 19
2.3. Môi trờng Active Server Page 19
2.3.1. Giới thiệu 19
2.3.2. Các đối tợng của ASP 21
2.4.Lập trình ADO (ActiveX Data Objects Programming) 25
2.4.1.Đối tợng Connection 25
2.4.2.Đối tợng Recordset 26
2.4.3.Đối tợng Command 28
2.4.4.Các đối tợng Errors. 28
22-(3456"7 8 9 :,;1<=>8
%?<-@AB&C
D6E&C
3.1.Chức năng nghiệp vụ 29
3.1.1. Các đối tợng đợc quản lý trong Th viện 29
3.1.2. Các chức năng nghiệp vụ 30
3.1.3 Các qui tắc nghiệp vụ và các ràng buộc: 31
3.1.4.Các tiến trình nhiệp vụ: 32
3.1.5.Xác định các chức năng của hệ thống 36
3.2.Mô hình và mối quan hệ giữa các thực thể 37

3.2.1. Xác định các thực thể 37
3.2.2. Mối quan hệ giữa các thực thể 40
3.2.3. Mô hình cơ sở dữ liệu logic 44
:F
4.1 Sơ đồ chức năng của hệ thống 46
4.2.Biểu đồ luồng dữ liệu 48
4.2.1. Biểu đồ luồng dữ liệu mức khung cảnh: 49
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
2
Chơng trình quản lý thông tin th viện
49
4.2.2. Biểu đồ luồng dữ liệu mức đỉnh: 50
4.2.3. Biểu đồ luồng dữ liệu mức dới đỉnh 51
4.3.Sơ hệ thống mạng 51
4.4.Thiết kế dữ liệu 54
4.4.1. Các bảng cấu trúc dữ liệu 54
4.4.2. Các bảng cấu truc dữ liệu hỗ trợ: 59
4.5.Thiết kế các module chơng trình: 60
4.5.1. Module đăng nhập: 60
4.5.2. Các module xử lý thao tác của ngời dùng: 61
4.5.3. Các module xử lý thao tác của ngời quản lý: 62
G2(0,-%(-(8 G
A8F$H% )IJ
.0J
Đánh giá: 74
Hớng phát triển : 74
:-%F(JG
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
3
Chơng trình quản lý thông tin th viện


Trong những năm ngần đây, ngành công nghệ thông tin phát triển một cách
nhanh chóng. ở Việt nam nhiều hoạt động kinh tế xã hội đợc tin học hoá, góp phần
thúc đẩy sự phát triển của xã hội, đặc biệt là trong công tác quản lý.
Tin học hoá trong công tác quản lý trớc hết nâng cao hiệu quả quản lý, giảm
bớt sức lao động của con ngời, tiết kiệm đợc thời gian và tiện lợi hơn rất nhiều so
với việc quản lý thủ công. Tin học hoá giúp thu hẹp không gian lu trữ, tránh thất lạc
dữ liệu, tự động hệ thống hoá, cụ thể hoá và chính xác hoá các thông tin theo nhu
cầu của con ngời.
Tuy nhiên, việc ứng dụng tin học vào nhiều lĩnh vực ở Việt Nam còn tiến
triển chậm và cha khai thác hết thế mạnh của máy tính, trong đó có công tác quản lý
trong Th viện. Việc quản lý ở hầu hết các Th viện hiện nay chủ yếu làm thủ công
không có sự trợ giúp của máy tính, hoặc có chăng chỉ là dùng để lu trữ các thông tin
về t liệu cha cho phép hỗ trợ đắc lực trong việc quản lý cho nên mọi hoạt động của
Th viện còn phức tạp, nặng nề và trùng lặp, làm tốn nhiều công sức trong việc quản

Th viện là nơi phục vụ nhu cầu của các độc giả dới nhiều hình thức nh cho m-
ợn sách, hớng dẫn độc giả khai thác thông tin, tổ chức hội thảo về sách, khai thác
sách từ phía các nhà xuất bản theo yêu cầu của độc giả
Nhằm đáp ứng nhu cầu ngày càng cao của bạn đọc và đảm bảo đợc tính thời
sự của các loại thông tin trong Th viện thì các đầu sách báo và t liệu vẫn thờng
xuyên đợc cập nhật và bổ xung. Để giúp bạn đọc có thể dễ dàng tra cứu các loại
sách báo, tạp chí thì mỗi cuốn sách cần phải đợc mô tả bằng nhiều thông tin giúp ta
tìm đến nó một cách nhanh nhất. Ngời đọc cũng cần đợc Th viện quản lý thông qua
thẻ đọc với một số thông tin cần thiết về bản thân, về sách mà ngời đó đã mợn tại
Th viện. Ngoài ra, qua việc mợn sách của độc giả, Th viện biết đợc những loại sách
có nhu cầu mợn cao, do đó Th viện có thể xúc tiến việc đặt sách với các nhà xuất
bản để đảm bảo đợc các đầu sách và số lợng để phục vụ độc giả tốt nhất.
Để khắc phục tình trạng trên, đòi hỏi phải có sự đầu t, nghiên cứu áp dụng
công nghệ thông tin để thiết kế và xây dựng một phần mềm chuyên dụng và có tính

thống nhất cao đáp ứng yêu cầu quản lý thông tin Th viện ngày càng tăng về quy mô
và nội dung quản lý.
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
4
Chơng trình quản lý thông tin th viện
Vì vậy, trong thời gian vừa qua với sự giúp đỡ tận tình của: PGS. TS : Vũ Đức
Thi (Viện công nghệ thông tin ). Em đã tìm hiểu và xây dựng phần mền Quản lý
thông tin Th viện dự trên công nghệ World Wide Web cho phép bạn đọc của Th
viện có thể truy nhập từ xa vào trang Web của Th viện để tra cứu và đăng ký mợn
sách một cách thuận tiện và dễ dàng, mọi đối tợng có liên quan đến sự hoạt động
của Th viện đều đợc đa vào máy tính quản lý, giúp cho công tác quản lý của Th viện
trở nên đơn giản và gọn nhẹ. Cũng nh trong mọi lĩnh vực quản lý khác việc áp dụng
tin học vào quản lý Th viện cần hỗ trợ một cách đắc lực nhất cho ngời quản lý, do đó
cần áp dụng tin học vào một đối tợng cụ thể để xây dựng chơng trình quản lý.
Trong khuôn khổ bài khoá luận tốt nghiệp em thực hiện xây dựng chơng trình quản
lý thông tin Th viện của Đại Học Quốc Gia Hà Nội.
Bài khoá luận gồm hai phần:
Phần A: Cơ sở lý thuyết: Nêu ra lý thuyết cơ bản về cơ sở dữ liệu
quan hệ và kỹ thuật tạo Web bằng ASP (Active Server Page) thông qua cách thức
truy nhập dữ liệu ADO (Active Data Object)
Phần B : Bài toán quản lý thông tin Th viện Đại Học Quốc Gia Hà
Nội. Nêu lên bài toán, cách thức để giải quyết bài toán, kết quả đạt đợc.
Mặc dù đã có nhiều cố gắng nhng do hạn chế về mặt thời cũng nh kinh
nghiệm nên bài khoa luận Phân Tích Thiết Kế và Xây Dựng Chơng Trình Quản
Lý Thông Tin Th viện Đại Học Quốc Gia Hà Nội chắc chắn không tránh khỏi
những sai sót. Vì vậy rất mong đợc sự đánh giá, góp ý của các thầy, cô và bạn bè để
chơng trình đợc tiếp tục hoàn thiện.
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
5
Chơng trình quản lý thông tin th viện


!"#$%
Không có một ứng dụng tin học nào mà không liên quan đến việc tổ chức lu
trữ và khai thác dữ liệu. Vì vậy việc tổ chức cơ sở dữ liệu tốt có nhiều u điểm rõ rệt:
giảm đợc d thừa dữ liệu trong dữ liệu lu trữ, tránh đợc sự không nhất quán của dữ
liệu, dữ liệu có thể đợc chia cho nhiều ngời dùng, bảo đảm sự tuân thủ các tiêu
chuẩn thống nhất trong biểu diễn dữ liệu.
Để lu trữ dữ liệu ngời ta có thể lu trữ dữ liệu theo ba mô hình:
Mô hình mạng
Mô hình phân cấp
Mô hình quan hệ
Trong lập trình quản lý mô hình quan hệ thờng đợc sử dụng hơn cả nó cho
phép tạo mối quan hệ giữa các thực thể thông qua các khoá liên kết giúp cho việc
truy xuất thông tin đợc nhanh và không tốn không gian lu trữ. CSDL đợc xây dựng
dựa trên mô hình quan hệ đợc gọi là CSDL quan hệ.
1.1.Các khái niệm về cơ sở dữ liệu(CSDL):
Cơ sở dữ liêu:
CSDL là một tập hợp dữ liệu của một tổ chức, đợc lu trữ trong máy tính, đợc
nhièu ngời sử dụng và việc thực hiện nó đợc chi phối băng một mô hình dữ liệu.
Hệ quản trị CSDL:
Một hệ quản trị CSDL là một phần mềm cho phép khai thác một cách hợp lý
một CSDL, nói cách khác phần mềm này cho phép mô tả, lu giữ, thao tác xử lý các
tập hợp dữ liệu tạo nên CSDL, đồng thời nó bảo đmr sự an toàn và bí mật của các dữ
liệu trong môi trờng có nhiều ngời sử dụng.
Thực thể (Entity):
Thực thể là một hình ảnh tợng trng cho một đối tợng cụ thể hay một khái
niệm trừu tợng nhng có mặt trong thế giới thực.
Mối quan hệ (RelationShip):
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
6

Chơng trình quản lý thông tin th viện
Chỉ các quan hệ hình thành giữa các thực thể khác nhau.
Ví dụ
Mối quan hệ giữa thực thể Bạn đọc và Tài liệu là quan hệ Mợn
Khi đó để mô tả quan hệ ngời ta dùng ký hiệu :
Các thực thể tham gia vào mối quan hệ đợc nối với nhau bằng :
Nếu hai thực thể tham gai vào quan hệ thì có thể có các loại quan hệ sau:
- Quan hệ 1- 1: ký hiệu
- Quan hệ 1-m ký hiệu
- Quan hệ n-1 ký hiệu
- Quan hệ n - m ký hiệu
Nếu trong một CSDL mối quan hệ giữa các thực thể có dạng là 1-1 hoặc 1- m
hoặc n- 1 thì ta không cần chuẩn hoá còn trờng hợp có Mối quan hệ giữa hai thực
thể là n- m thì ta phai chuẩn hoá. Bằng cách tạo thêm một thực thể mới có các thuộc
tính là các khoá chính của hai thực thể đó.
Ví dụ : Mối quan hệ giữa Bạn đọc và Tài liệu là n - m thông qua quan hệ m-
ợn có thuộc tính Thời gian
Khi đó cần chuẩn hoá thành:
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
7
Bạ
n đọc

i liệu
M
ợn
Bạn
đọc
#Số
thẻ

M
ợn/trả
# Mã
tài liệu
# Số
thẻ
# thời
gian
Tài
liệu
# Mã
tài liệu
Bạn
đọc
#Số
thẻ
Tài
liệu
# Mã
tài liệu
M
ợn
Th
ời gian
Chơng trình quản lý thông tin th viện
1.2. Các khái niệm về cơ sở dữ liệu quan hệ
1.2.1.Thuộc tính :
Một thuộc tính biểu thị một đơn vị thông tin nhỏ nhất, có thể đợc sử một
cách tự do và có ý nghĩa độc lập với các đơn vị thông tin khác trong mọi mô hình
thuộc tính đại diện cho một phần tử cơ sở của hệ thống thông tin

Một thuộc tính đợc xác định bằng một cặp {Tên thuộc tính, Miền giá trị}.
1.2.1.1Tên thuộc tính:
Để xác định một thuộc tính, ngời ta đặt cho nó một cái tên, tên này đợc gọi
là tên thuộc tính. Tên thuộc tính là duy nhất cho mỗi thuộc tính
1.2.1.2.Miền giá trị:
Mỗi thuộc tính đều phải thuộc một kiểu dữ liệu, kiểu dữ liệu có thể là vô h-
ớng hoặc có cấu trúc. Kiểu dữ liệu có cấu trúc đợc định nghĩa dựa trên các kiểu dữ
liệu vô hớng.
Một tập hợp các phần tử mà một thuộc tính có thể lấy giá trị gọi là miền giá
trị, nói cách khác, miền giá trị là tập hợp các giá trị cùng loại có thể có của thuộc
tính.
1.2.1.3.Cách biểu diễn miền giá trị của một thuộc tính:
-Nếu số phần tử của miền giá trị là ít thì liệt kê tất cả các giá trị của các phần
tử.
Ví dụ {giới tinh (nam, nữ)}
Nếu số phần tử của miền là nhiều thì dùng cách mô tả tập hợp
Ví dụ: {Tuổi sinh viên, số nguyên N: N [18:25]}
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
8
M
ợn/trả
# Mã
tài liệu
# Số
thẻ
# thời
gian
Tài
liệu
# Mã

tài liệu
Chơng trình quản lý thông tin th viện
- Nếu số các phần tử của miền giá trị rất nhiều hoặc không biết trớc
đợc mà không có tính chất đặc trng nào thì mô tả tập hợp theo kiểu của dữ liệu
Ví dụ {Họ tên, chuỗi ký tự có độ dài < 30}
- Nếu kiểu dữ liệu của thuộc tính có cấu trúc thì miền giá trị của nó
là tích Đề Các của các miền giá trị thành phần
Ví dụ: {Toạ độ màn hình, [0 24]x[0 79]}
1.2.2. Quan hệ:
Cho R={a1,a2, ,an} là một tập hữu hạn và không rỗng các thuộc tính. Mỗi
thuộc tính ai có miền giá trị là Da
i
(các miền giá trị Da
i
không nhất thiết phải khác
biệt nhau). Một quan hệ r trên R là các bộ {h
1
,h
2
, ,h
m
} với mỗi h
j
(j=1,2, , m) là
một hàm:
h
j
:R ->

Rai

Dai
sao cho h
j
(a
i
) Da
i

Nói cách khác, một quan hệ r trên tập R là tập hợp con của tích Đề các
của n miền giá trị Da
1
x Da
2
x x Da
n

Giá trị n đợc gọi là bậc của r, giá trị M đợc gọi là lực lợng của r.
Quan hệ r có thể biểu diễn dới dạng bảng:
a
1
a
2
a
n
H
1
h
1
(a
1

)
H
2
(a
2
)
h
1
(a
n
)
H
2
h
2
(a
1
)
H
2
(a
2
)
h
2
(a
n
)
.



h
m
h
m
(a
1
)
h
m
(a
2
)
h
m
(a
n
)
1.2.3. Phụ thuộc hàm (Functional dependency )
Khái niệm phụ thuộc hàm là một khái niệm có tầm quan trong hết sức lớn đối
với việc thiét kế CSDL quan hệ. Năm 1970 khái niệm này đợc E.F. Codd đề cập
nhằm giả quyết vấn đề phân rã các quan hệ (khi chuẩn hoá quan hệ) mà không mất
mát thông tin.
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
9
Chơng trình quản lý thông tin th viện
Có hai loại phụ thuộc hàm:
- Phụ thuộc hàm trên quan hệ:
Cho R= {a
1

, a
2
, , a
n
}là một tập hữu hạn không rỗng các thuộc tính, r={h
1
,h
2
,
, h
m
} là một quan hệ trên R, và A,B R. Khi đó ta nói A xác định hàm cho B hay
B phụ thuộc hàm vào A trong r (ký pháp A -> B) nếu và chỉ nếu:
(h
i
,h
j
r)( aA)(h
i
(a)=h
j
(a)) (bB)(h
i
(b)=h
j
(b)).
- Phụ thuộc hàm trên tập thuộc tính:
Cho R={a
1
,a

2,,
,a
n
} là một tập hữu hạn và không rỗng các thuộc tính, một
phụ thuộc hàm trên tập các thuộc tính R là một dãy ký tự có dạng A -> B với A,B
R.
1.2.4. Sơ đồ quan hệ (Relation schema)
Một sơ đồ quan hệ s là một cặp <R,F> trong đó R là một tập các thuộc tính,
F là tập các phụ thuộc hàm trên R.
1.2.5 Khoá:
Giả sử r là một quan hệ trên R và K R. Khi đó K là một khoá của r nếu K
-> R.
Gọi K là một khoá tối thiểu của r nếu:
- K là một khoá của r.
- Bất kỳ một tập con thực sự của K không là khoá của r.
Các thuộc tính tham gia vào một khoá đợc gọi là thuộc tính khoá, các thuộc
tính không tham gia vào một khoá gọi là thuộc tính không khoá (hay thuộc tính mô
tả).
Từ định nghĩa của quan hệ và định nghĩa của khoá dễ thấy rằng một quan hệ
luôn có ít nhất một khoá (tầm thờng nhất là lấy R làm khoá), có thể có nhiều khoá
và có thể có nhiều khoá tối thiểu.
Từ định nghĩa của khoá và định nghĩa của phụ thuộc hàm trên quan hệ ta có
thể chứng minh rằng khoá đợc dùng làm cơ sở để phân biệt hai bộ tuỳ ý trong một
quan hệ. Trong thực tế khi cài đặt trên một hệ quản trị CSDL xét về mặt hiệu quả sử
dụng thì ngời ta dùng khoá tối thiểu để làm cơ sở nhận diện một bộ trong quan hệ,
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
10
Chơng trình quản lý thông tin th viện
trong trờng hợp có nhiều khoá tối thiểu thì ngời ta chọn một khoá tối thiểu và khoá
đợc chọn này gọi là khoá chính (Primary key).

Ví dụ: xét quan hệ r trên bộ R={SCMT, Số thẻ, Họ và tên, chức vụ, Tên cơ
quan chủ quản, địa chỉ} ta thấy quan hệ này ít nhất có các khoá sau:
K= {Số thẻ}
K= {Số thẻ, Họ và tên}
K= {Số thẻ, Họ và tên, Tên cơ quan chủ quản}
K= {SCMT}
K= {SCMT,Họ và tên}
K= {SCMT, Họ và tên, Tên cơ quan chủ quản}
Dễ thấy {Số thẻ} và {SCMT} là các khoá tối thiểu. Nên khi cài đặt ta có thể
chọn Số thẻ làm cơ sở để nhận diện các bộ và {Số thẻ} đợc gọi là khoá chính.
1.2.6. Hệ tiên đề cho phụ thuộc hàm.
Để xác định đợc khoá của một quan hệ và các suy diễn logic giữa các phụ
thuộc hàm đòi hỏi phải có các quy tắc suy diễn logic, muốn vậy phải xây dựng hệ
tiên đề cho phụ thuộc hàm.
Cho R là một tập hữu hạn không rỗng các thuộc tính, ký pháp P(R) là tập các
tập con của R, giả sử A,B,C P(R) ta có:
Tiên đề 1(Phản xạ): B A thì A -> B
Tiên đề 2(Tăng trởng): A -> B thì AB -> B C
Tiên đề 3: (Bắc cầu): A -> B và B -> C thì A -> C
Hệ tiên đề trên do W.W. Armstrong phát biểu đầu tiên năm 1974 nên còn đ-
ợc gọi là hệ tiên đề Armstrong.
1.3. Chuẩn hoá các quan hệ và sơ đồ quan hệ
Việc chuẩn hoá các quan hệ và sơ đồ quan hệ đống vai trò cực kỳ quan trọng
trong việc thiết kế các CSDL, hệ quản trị CSDL trên CSDL quan hệ. Nhờ việc chuẩn
hoá các quan hệ và các sơ đồ quan hệ mà chúng ta tránh đợc việc d thừa dữ liệu, loại
bỏ đợc các dị thờng dữ liệu, giảm dung lợng lu trữ và tăng tốc độ của các thao tác
trên dữ liệu.
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
11
Chơng trình quản lý thông tin th viện

Vào năm 1970, tiến sĩ E.F.Codd của IBM đã đa ra các định nghĩa về các dạng
chuẩn của của quan hệ và các thuật toán đa quan hệ về các dạng chuẩn.
1.3.1. Các định nghĩa về dạng chuẩn trong quan hệ
Để đơn giản trong việc đa ra các định nghĩa về các dạng chuẩn của quan hệ ta
đa ra ba định nghĩa sau:
Định nghĩa về thuộc tính cơ bản, thuộc tính thứ cấp:
Giả sử r là một quan hệ trên tập thuộc tính R, gọi K
r
là tập các khoá tối thiểu
của r. Ta nói rằng a là một thuộc tính cơ bản (Prime) của r nếu tồn tại một khoá tối
thiểu K K
r
để a là một phần tử của K. Nếu a không thoả mãn tính chất trên thì a đ-
ợc gọi là thuộc tính thứ cấp của r.
Định nghĩa về phụ thuộc hàm đầy đủ:
Giả sử r là một quan hệ trên tập thuộc tính R và A,B P(R), khi đó B đợc gọi
là phụ thuộc hàm đầy đủ vào A nếu B phụ thuộc hàm vào A nhng không phụ thuộc
hàm vào bất kỳ một tập con thực sự nào của A.
Định nghĩa về phụ thuộc hàm bắc cầu:
Giả sử r là một quan hệ trên tập thuộc tính R và A,C P(R) khi đó C đợc gọi
là phụ thuộc hàm bắc cầu vào A trên R nếu tồn tại B P(R)
Sao cho : A -> B, B -> C, nhng B không xác định hàm A với C A B
Điều kiện C A B cần để tránh trờng hợp C B A khi đó theo tiên đề
phản xạ ta luôn có A -> B -> C, còn điều kiện B không xác định hàm A để loại bỏ
nhiều khoá không cần thiết
Quan hệ ở dạng chuẩn một (First Normal Form 1NF)
Một quan hệ đợc gọi là ở dạng chuẩn một nếu mỗi miền giá trị của mọi thuộc
tính chỉ chứa những giá trị nguyên tố (atomic) tức là không chia nhỏ hơn đợc nữa.
Ví dụ: Xét quan hệ Phiếu Mợn (Số thẻ, Tài liệu) trong đó mỗi tài liệu đợc thể
hiện thông qua (Tên tài liệu, số lợng, Tên tác giả,Tập số, Tên Nhà xuất bản, Lần

xuất bản), quan hệ này cha đợc chuẩn hoá.
Quan hệ (Số thẻ, Tên tài liệu, số lợng, Tên tác giả,Tập số, Tên Nhà xuất bản,
Lần xuất bản ) là quan hệ đợc chuẩn hoá.
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
12
Chơng trình quản lý thông tin th viện
Quan hệ ở dạng chuẩn hai (Second Normal Form 2NF)
Một quan hệ đợc gọi là ở dạng chuẩn hai nếu:
- Nó đã ở dạng chuẩn một
- Mọi thuộc tính thứ cấp phụ thuộc hàm đầy đủ vào khoá chính
Ví dụ:
Xét quan hệ BANDOC (Số thẻ, Họ tên, Chức vụ, Mức u tiên, Số lợng đợc m-
ợn, Số ngày đợc mợn)
Dễ thấy {Số thẻ, Mức u tiên} là khoá chính của quan hệ BANDOC. Quan hệ
này có d thừa dữ liệu khi khi thêm hoặc bớt bộ. Ngoài ra các thuộc tính thứ cấp (Số
lợng đợc mợn, Số ngày đợc mợn) phụ thuộc hàm vào Mức u tiên là một tập con thực
sự của khoá chính. Vì vậy ta tách quan hệ trên thành hai quan hệ:
TT_BANDOC(Số thẻ, Mức u tiên, Họ tên, chức vụ)
MUC_UU_TIEN(Mức u tiên, Số lợng đợc, Số ngày đợc mợn).
Quan hệ ở dang chuẩn ba (Third Normal Form 3NF)
Một quan hệ đợc gọi là ở dạng chuẩn ba nếu:
- Nó đã ở dạng chuẩn hai
- Mọi thuộc tính thứ cấp không phụ thuộc hàm bắc cầu vào khoá chính. Nói
cách khác, tất cả các phụ thuộc hàm giữa khoá chính và các thuộc tính khác của nó
đều trực tiếp.
Ngoài ba chuẩn trên còn có các chuẩn 4NF, 5NF nhng trong thực tế ngời ta
chỉ áp dụng việc chuẩn hoá quan hệ về dạng chuẩn ba là chủ yếu
1.3.2. Thực hiện chuẩn hoá
Đa quan hệ về dạng chuẩn một:
Thông thờng các quan hệ vi phạm điều kiện của dạng chuẩn một theo các tr-

ờng hợp sau:
- Mọi giá trị xuất hiện trong một thuộc tính có thể chia thành một số phần
nhất định. Ví dụ thuộc tính Cơ quan chủ quản (trong quản lý bạn đọc) có thể chia
thành Trờng, Khoa, lớp. Nh vậy trong trờng hợp này ta chỉ việc tách thuộc tính ấy
thành các thuộc tính cụ thể hơn.
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
13
Chơng trình quản lý thông tin th viện
- Các giá trị xuất hiện trong một thuộc tính có thể chia nhỏ nhng không thể
chia thành cùng một số thành phần nhất định. Trong trờng hợp này ta phải thêm các
bộ mới. Ví dụ Tài liệu đợc ghi trong phiếu mợn rõ ràng là trong một lần mợn Bạn
đọc có thể mợn nhiều loại tài liệu khác nhau (nh Kỹ năng lập trinh Visual basic, Tạp
chí PC World, ). Nên trong trờng hợp này mỗi bộ trong quan hệ sẽ phải chia thành
một số bộ đúng bằng số loại tài liệu mà Bạn đọc mợn.
Đa quan hệ về dạng chuẩn hai:
Trớc hết ta giả thiết là quan hệ đã ở dạng chuẩn một đối với tập R tất cả các
thuộc tính. Tiếp đến vấn đề dặt ra là : Tập thuộc tính nào là khoá chính của quan hệ
(khoá chính của quan hệ có thể xác định bằng ngữ nghĩa của các thuộc tính). Giả sử
khoá chính đã đợc xác định là K.
Sự vi phạm điều kiện của dạng chuẩn hai thể hiện ở chỗ tồn tại một tập thuộc
tính Y chỉ phụ thuộc hàm vào mộy bộ phận của khoá chính là K K. Khi ấy ta
thực hiện phân rã quan hệ bằng cách đa các thuộc tính {K,Y} sang một quan hệ và
các thuọc tính R - Y sang một quan hệ khác. Rõ ràng, K là khoá chính của quan hệ
chứa các thuộc tính {R- Y}, còn K là khoá chính của quan hệ chứa các thuộc tính
{K,Y}.
Đa quan hệ về dạng chuẩn ba:
Để đa quan hệ cha ở dạng chuẩn ba về các quan hệ ở dạng chuẩn ba ta giả
thiết nó đã ở dạng chuẩn hai và phải thực hiện các bớc sau:
- Tìm một khoá chính của quan hệ
- Tìm ra các phụ thuộc hàm bắc cầu vào khoá chính dạng K -> X, X -> Y.

- Nếu tìm thấy phụ thuộc hàm bắc cầu nh vậy ta sẽ phân rã quân hệ thành
hai quan hệ {X,Y} và R-Y.
- Kiểm tra đối với các quan hệ vừa nhận đợc đẫ ở dạng chuẩn ba cha, nếu
cha thì thực hiện phân rã tiếp nh trên.
Ta có thể hình dung các vị trí các dạng chuẩn nh hình sau:
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
14
1
NF
2
NF
3
NF
Chơng trình quản lý thông tin th viện
1.3.3. Liên kết các quan hệ :
Xét một hệ thống thông tin, do quá trình thiết kế CSDL, chẳng hạn từ một
quan hệ ban đầu ta có thể phân rã thành nhiều quan hệ khi tiến hành chuẩn hoá. Nh-
ng để cập nhật truy xuất thông tin ta phải liên kết các quan hệ có liên quan đến
nhau.
Thờng có ba loại liên kết: Liên kết 1 - 1, Liên kết 1 - n, Liên kết móc xích;
trong đó liên kết 1 - 1 là liên kết cơ bản còn hai liên kết còn lại thực chất là tổ hợp
các liên kết 1 - 1.
Để có thể liên kết đợc hai quan hệ với nhau, đối với mỗi quan hệ ta phải xác
định đợc khoá liên kết. Khoá liên kết là tổ hợp thuộc tính của mỗi quan hệ, mà nhờ
có tổ hợp này ta có thể liên kết quan hệ này với quan hệ kia bằng cách so sánh giá
trị của tổ hợp này đối với các bộ của mỗi quan hệ, nếu mỗi quan hệ có ít nhất một
bộ giá trị bằng nhau thì hai bộ này đặt tơng ứng với nhau.
Trong liên kiết 1-1 ta phải xác định quan hệ nào là chính, quan hệ còn lại sẽ
là phụ. Khoá liên kết ở quan hệ chính đợc gọi là khoá ngoại (Foriengn key), còn
khoá liên kết ở quan hệ phụ là khoá chính ở quan hệ phụ.

Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
15
Chơng trình quản lý thông tin th viện
&'()"'"*'*+,-./01('*+
2.1. Giới thiệu về World Wide Web.(WWW)
WWW đợc xây dựng và hoạt động theo mô hình Client/Server. Trớc tiên ta sẽ
tìm hiểu về mô hình Client/Server.
2.1.1. Mô hình Client/Server
Thuật ngữ Server đợc dùng cho những chơng trình thi hành nh một dịch vụ
trên toàn mạng. Các chơng trình Server này chấp nhận tất cả các yêu cầu hợp lệ đến
từ mọi nơi trên mạng, sau đó thi hành dịch vụ và trả kết quả về nơi yêu cầu. Một
máy tính chứa chơng trình Server đợc gọi là một máy chủ hay máy phục vụ (server).
Một chơng trình đợc coi là Client khi nó gửi các yêu cầu tới máy server và
đợi câu trả lời từ Server. Máy có chứa chơng trình client đợc gọi là máy khách
(client).
Chơng trình Client và Server nói chuyện với nhau bằng các thông điệp
(messages) thông qua một cổng truyền thông liên tác IPC (InterProcess
Communication) theo một chuẩn nói chuyện có sẵn đợc gọi là giao thức (protocol).
Trên thực tế sự phân biệt giữa Client và Server chỉ là tơng đối. Một Client có
thể gửi yêu cầu đến một hoặc nhiều Server, Server không những đáp ứng yêu cầu
của Client mà còn có thể gửi yêu cầu tới Server khác, trong trờng hợp này Server đã
trở thành một Client. Ví dụ nh một Database Server có thể yêu cầu một Printer
Server in một văn bản.
Với mô hình trên ta nhận thấy mô hình Client/Server chỉ mạng đặc điểm của
phần mềm chứ không liên quan gì đến phần cứng mặc dù trên thực tế yêu cầu về
phần cứng của một máy Server là cao hơn rất nhiều so với một máy Client do máy
Server phải quản lý rất nhiều các yêu cầu từ các client khác nhau trên mạng.
2.1.2. Ưu nhợc điểm chính của mô hình Client/Server
Trong mô hình Client/Server, dữ liệu và tài nguyên đợc chia sẻ giữa hai máy,
tăng hiệu quả hoạt động của hệ thống. Có thể nói rằng với mô hình Client/Server,

mọi thứ dờng nh nằm trên bàn của ngời sử dụng, dữ liệu đợc truy nhập từ xa với
nhiều dịch vụ đa dạng mà các mô hình cũ không có đợc. Ngoài ra, mô hình
Client/Server cung cấp một nền tảng lý tởng cho phép tích hợp các kỹ thuật hiện đại
nh mô hình thiết kế hớng đối tợng, hệ chuyên gia, hệ thông tin địa lý (GIS),
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
16
Chơng trình quản lý thông tin th viện
Một trong những vấn đề nảy sinh của mô hình này là vấn đề an toàn và bảo
mật thông tin trên mạng. Do phải trao đổi dữ liệu giữa hai máy ở hai khu vực khác
nhau nên dễ xảy ra trờng hợp thông tin trên đờng truyền bị lộ.
2.1.3. Mô hình World Wide Web (Web Client/Server)
Mô hình Client/Server ứng dụng vào trong Web đợc gọi là mô hình Web
Client/Server. Giao thức chuẩn đợc sử dụng để giao tiếp giữa Client và Server và
giao thức HTTP (HyperText Transfer Protocol Giao thức truyền thông siêu
văn bản).
Thuật ngữ Siêu văn bản đợc đa ra lần đầu tiên vào năm 1965, trong bài viết
Computer Dream, Ted Nelson. Tuy nhiên mãi năm 1980, một kỹ s trẻ ngời Anh tên
là Tim Berners-Lee mới có điều kiện tin học hoá khái niệm đó. Ban đầu với mục
tiêu giúp cho các đồng nghiệp của mình làm việc tại viện nghiên cứu Vật lý hạt
nhân châu Âu(CERN)-Thuỵ Sỹ thuận lợi hơn trong công tác tra cứu tài liệu, Tim
Berners-Lee đa ra một dự án xây dựng hệ thống thông tin toàn cầu dựa trên liên kết
siêu văn bản. Thuật ngữ World Wide Web đợc dùng để mô tả dự án và công bố lần
đầu tiên vào tháng 8-1991 trên nhóm tin alt.hypertext. Từ đó nhiều nhà sản xuất đã
tham gia phát triển Web cho hệ thống của mình(UNIX, WINDOW,. . .).
Tuy ra đời muộn hơn so với các dịch vụ khác của Internet nhng WWW lại có
tốc độ phát triển nh vũ bão và làm cho Internet hấp dẫn hơn lôi cuốn nhiều ngời
quan tâm hơn. Giao diện đồ hoạ của Web cho phép ngời sử dụng không có hiểu biết
sâu sắc về tin học cũng có thể sử dụng đợc. Nhờ có liên kết, họ có thể đi từ thông tin
này đến thông tin khác mà không cần biết nó nằm ở đâu trên mạng. Web xoá nhoà
khoảng cách về địa lý, ranh giới giữa các quốc gia, giúp con ngời có thể tiếp xúc với

những thông tin mới nhất trên toàn thế giới. Các khả năng của Internet ngày nay chủ
yếu dựa vào World Wide Web. Mặt khác trình duyệt Web bây giờ không chỉ làm
mỗi chức năng là cho xem các t liệu HTML mà bây giờ nó còn tích hợp cả cả các
dịch vụ khác của Internet nh E-Mail, FTP, . . . Nh vậy, chỉ cần và thông qua giao
diện Web, ta có thể thực hiện mọi dịch vụ của Internet. Điểm nổi bật của Web là:
+ Web cho phép hiển thị thông tin cần truy tìm theo chế độ đồ hoạ, hơn hẳn
những dòng văn bản buồn tẻ của Internet trớc đây
+ Web cho phép ta có thể chui vào mọi ngõ ngách trên Internet, những
điểm chứa cơ sở dữ liệu gọi là Web Site.
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
17
Chơng trình quản lý thông tin th viện
+ Web giúp cho ngành dịch vụ, giải trí một phơng tiện tuyệt vời, tạo điều
kiện cho việc xuất bản tạp chí sách báo một cách nhanh chóng dễ dàng.
+ Web ngày nay hỗ trợ đắc lực cho các công ty trong công việc kinh doanh
nh quảng cáo tiếp thị, nghiên cứ thị trờng, bán hàng, . . .
2.2. Những khái niệm cơ bản về World Wide Web.
2.2.1.Địa chỉ trên Web.
Địa chỉ của Web đợc biết đến nhờ các URL (Uniform Resource Locatoion -
Bộ định vị tài nguyên thống nhất). Nếu các trang Web đợc ghi lồng vào sâu hết mục
này đến mục khác thì địa chỉ của Web sẽ hết sức dài. Một URL thờng có cấu trúc
nh sau:
Protocol://host.domain/directory/file.name
+ Protocol: Nghi thức TCP/IP sử dụng để tìm tài nguyên (HTTP hay FTP)
+ Host.domain: Tên máy chủ nơi trang Web đó tồn tại
+ Directory: Tên th mục ảo chứa trang Web. Th mục ảo ở đây đợc định nghĩa
sẵn trên Web server nó tham chiếu đến một th mục vật lý nằm trên máy chủ hoặc
một máy mạng nào đó. Có thể một th mục con trong cây th mục lớn đợc tham chiếu
dới một tên ảo có cấp ngang bằng với cấp của th mục ảo tham chiếu tới th mục gốc
của cây th mục đó.

+ File.name: Tên của trang Web. Trang Web này thờng mặc định là có phần
mở rộng là HTM, HTML nhng cũng có thể có phần mở rộng nh ASP, CGI, DLL,
EXE, PL
URL đợc sử dụng ở tất cả các dịch vụ thông tin trên mạng. Mỗi một trang
Web có một URL duy nhất để xác định trang Web đó. Qua phân tích cấu trúc của
một URL, ta thấy rằng thông qua URL có thể truy cập tới bất cứ một tài nguyên
thông tin dữ liệu của bất kỳ một dịch vụ thuộc bất kỳ một máy tính nào trên mạng.
2.2.2. Web Server
Web server là một phần mềm đóng vai trò phục vụ. Khi đợc khởi động, nó đ-
ợc nạp vào bộ nhớ và đợi các yêu cầu từ nơi khác gửi đến. Quá trình này gọi là
Listen và quá trình này cũng phải phân biệt là yêu cầu gửi đến từ cổng nào chẳng
hạn thờng thì HTTP dùng cổng 80, FTP dùng cổng 21, Gopher dùng cổng 25 Các
yêu cầu có thể đợc gửi đến từ Web Browser từ máy trạm của ngời dùng hoặc cũng
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
18
Chơng trình quản lý thông tin th viện
có thể đợc gửi đến từ một Web Browser khác và ta gọi chung các đối tợng gửi yêu
cầu đến là các khách hàng (Client). Các yêu cầu đối với Web Server thờng là về một
t liệu hoặc thông tin nào đó. Sau khi nhận đợc yêu cầu nó phân tích xem thông tin
hay t liệu khách hàng muốn là gì, trong trờng hợp khách hàng chỉ yêu cầu lấy một
trang Web tĩnh thì nó sẽ tìm lấy trang Web đó và gửi trả lại cho Web khách hàng d-
ới theo giao thức HTTP. Trờng hợp có yêu cầu trang Web động thì một số chơng
trình trên Web Server sẽ đợc kích hoạt mở và xử lý thông tin cần thiết sau đó sẽ trả
lại cho khách hàng các thông tin đã xử lý dới dạng trang Web tĩnh.
2.2.3. Web Client
Ngời dùng cuối dùng một trình ứng dụng gọi là trình duyệt Web(Web
Browser ) để kết nối và gửi các yêu cầu tới máy chủ Web Server. Sau khi gửi các
yêu cầu thông tin từ máy trạm lên máy chủ, Web Browser sẽ đợi câu trả lời và các
thông tin từ máy chủ trả về và hiển thị các thông tin đó dới dạng trang Web cho ngời
sử dụng. Có nhiều loại Browser khác nhau:

+ Lynx trong Unix
+ Mosaic
+ Netscape Navigator
+ Internet Explorer
Hầu hết các Web Browser đều hỗ trợ mặc định một số kiểu tệp đặc trng cho
Internet nh: HTML, CGI, GIF, BMP, JPG Nhiều Web Browser thế hệ mới còn
cho phép mở rộng khả năng tơng tác của các trang Web bằng cách hỗ trợ thêm Java
và Java Script.
2.3. Môi trờng Active Server Page.
2.3.1. Giới thiệu.
Microsoft Active Server Page là một môi trờng giúp ta áp dụng các ngôn ngữ
script để tạo ra những ứng dụng có thể nhanh chóng tơng tác với cơ sở dữ liệu, có
tính bảo mật cao. Các đoạn chơng trình nhỏ đợc gọi là script sẽ đợc nhúng vào trong
các trang của ASP để phục vụ cho việc đóng, mở, thao tác với dữ liệu cũng nh điều
khiển việc các trang Web tơng tác với ngời dùng nh thế nào. Các ứng dụng xây dựng
bằng ASP là các file có phần mở rộng ASP. Trong một File ASP có thể trộn lẫn các
đoạn mã script, các thẻ của HTML và các đoạn văn bản (text). Trên mỗi trang ASP
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
19
Chơng trình quản lý thông tin th viện
có một ngôn ngữ script gọi là ngôn ngữ script cơ sở. Ngôn ngữ cơ sở có thể là một
trong các ngôn ngữ script thông dụng sau: JScript, VBScript, Perl . . . Ngôn ngữ cơ
sở mặc định là VBScript. Để thiết lập lại ngôn nggữ script mặc định ASP cung cấp
lệnh sau
<% LANGUAGE=Tên_ngôn_ngữ_Script %>
Các script này đợc chạy ngay trên Web Server mà không cần biên dịch riêng.
Chính điều này đã làm cải thiện đáng kể tới tốc độ thực hiên ứng dụng đợc xây dựng
bằng ASP. Để chạy đợc những đoạn chơng trình đợc viết bằng ngôn ngữ script thì
phải có máy Script (Engine). Máy script làm nhiệm vụ đọc tệp nguồn của chơng
trình, dịch và thực hiện các câu lệnh trong đó. Mỗi ngôn ngữ Script đòi hỏi phải có

một máy Script riêng. Ví dụ các đoạn chơng trình viết bằng VBScript thì phải có
VBScript Engine, bằng JScript thì phải có JScript Engine.
Phân loại Script: Các ngôn ngữ Script còn đợc phân loại theo vị trí mà nó đ-
ợc nạp và thực hiện. Có hai loại nh sau:
a. Server-side script:
Là những đoạn script nằm trong tệp ASP sẽ đợc thực hiện ở máy chủ và sẽ không
nằm trong kết quả trả về cho Web Browser của ngời dùng. Các Server-
side script đợc khai báo theo cú pháp nh sau:
<% Những lệnh nằm trong này đợc thực hiện trên Server %>
hoặc
<Script Language = Tên_script_language Runat = Server>
Các lệnh script đợc thực hiện trên Server
</Script>
b. Client-side script:
Là những đoạn script nằm trong tệp ASP mà nó sẽ đợc thực hiện trên Web Browser
của Client. Những đoạn Script này thờng dùng để hỗ trợ việc tính toán
đơn giản ngay trên Client. Các Client_side Script đợc khai báo nh sau:
<SCRIPT Language= Tên_Ngôn_ngữ_Script >
Các lệnh script
</SCRIPT>
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
20
Chơng trình quản lý thông tin th viện
Tóm lại quá trình làm việc của một ứng dụng đợc xây dựng bằng ASP gồm
các bớc nh sau:
Bớc 1: Khi Web Browser ở máy ngời dùng gửi một yêu cầu về một tệp
ASP cho Web Server
Bớc 2: Tệp ASP đó đợc nạp vào bộ nhớ và thực hiện tại máy chủ
(Server). Các đoạn chơng trình script trong tệp ASP đó có thể là mở dữ liệu, thao tác
với dữ liệu để lấy đợc những thông tin mà ngời dùng cần đến. Trong giai đoạn này

tệp ASP đó cũng xác định xem là đoạn Script nào là chạy trên máy chủ, đoạn Script
nào là chạy trên máy ngời dùng
Bớc 3: Sau khi thực hiện kết quả đó sẽ đợc trả về cho Web Browser
của ngời dùng dới dạng một trang Web tĩnh
2.3.2. Các đối tợng của ASP.
ASP cung cấp một loạt các đối tợng cho phép nhận thông tin từ Web Browser
hoặc đáp ứng các yêu cầu từ Web Browser, hoặc lu các thông tin về ngời dùng.
Active Server Page gồm có các đối tợng sau:
2.3.2.1. Application:
Đối tợng Application đợc dùng để chia sẻ thông tin giữa các ngời dùng của
cùng một hệ thống ứng dụng. Một ứng dụng cơ bản ASP đợc định nghĩa là gồm tất
cả các tệp ASP ở trong một th mục ảo và tất cả các th mục con của th mục ảo đó. Có
thể sử dụng các phơng thức LOCK và UNLOCK của đối tợng Application để khoá
và bỏ khoá khi chạy ứng dụng đó với nhiều ngời dùng.
Các đối tợng con:
* Contents: Chứa tất cả các đối tợng đợc thêm vào Application trong quá trình thực
hiện các Script.
* StaticObjects: Chứa tất cả các đối tợng đợc thêm vào Session trong quá trình thực
hiện các Script.
Các phơng thức (Methods)
LOCK: Không cho các ngời dùng khác thay đổi thuộc tính các đối tợng của
Application
UNLOCK: Huỷ bỏ LOCK
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
21
Chơng trình quản lý thông tin th viện
Các sự kiện (Events)
Application_OnStart : Xảy ra khi một yêu cầu tới một tệp đầu tiên trong hệ thống
ứng dụng
Application_OnEnd : Xảy ra khi hệ thống ứng dụng kết thúc

2.3.2.2. Session:
Đối tợng Session đợc dùng để lu thông tin riêng rẽ của từng phiên làm
việc. Các thông tin lu giữ trong Session không bị mất đi khi ngời dùng chuyển từ
trang Web này sang trang Web khác. Các thông tin đợc lu trong Session thờng là
các thông tin về ngời dùng hoặc các điều kiện chẳng hạn nh ngời dùng không muốn
nghe các tệp tin nhạc ở một số các trang thì phải có một biến để lu giữ lại thông tin
này. Đối tợng Session đợc Web Server tự động tạo nếu nh các trang Web của ứng
dụng đợc đòi hỏi bởi một ngời dùng mà cha có SessionID. SessionID là một mã mà
Web Server sẽ gửi về cho Web Browser ở máy ngời dùng và mã này dùng cho Web
Server nhận biết là yêu cầu đợc gửi từ Session nào đến.
Các đối tợng con của đối tợng Session:
* Contents: Chứa tất cả các đối tợng đợc thêm vào Session trong quá trình thực hiện
các Script.
* StaticObjects: Chứa tất cả các đối tợng đợc thêm vào Session trong quá trình thực
hiện các trang Web có chứa các thẻ <OBJECT>.
Các phơng thức của đối tợng Session.
Abandon: Huỷ bỏ Session hiện thời và giải phóng mọi thông tin liên quan đến
Session.
Các sự kiện (Events)
Session_OnStart : Xảy ra khi Server tạo ra một Session mới và việc này đợc thực
hiện trớc khi Server trả lời lại yêu cầu của Web Browser. Mọi thông
tin và các biến sử dung chung trong một Session tốt nhất là đợc khởi
tạo tại đây và mọi thành phần khác của ASP đều có thể đợc tham khảo
trong Event này.
Session_OnEnd : Xảy ra khi Session kết thúc hoặc bị timeout
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
22
Chơng trình quản lý thông tin th viện
2.3.2.3. Request:
Đối tợng này chứa các thông tin của Web Browser gửi đến Server thông qua

giao thức TCP/IP. Cú pháp nh sau:
Request[.collection|property|method](variable)
Trong đó thành phần Collection có thể gồm những đối tợng nh sau:
1. Cookies: Giá trị cookies của Web Browser gửi đến Server thông qua
HTTP
Form: Khi một nút Submit của Form đợc bấm thì toàn bộ giá trị của Form đó sẽ đợc
truyền về Server
3. QueryString: Các tham số có thể đợc truyền đến tệp ASP bằng đối tợng
FORM. Nhng trong trờng hợp mà dùng các HyperLink mà muốn truyền tham số thì
phải dùng QueryString
4. ServerVariables: Chứa các thông tin về các biến môi trờng đã đợc định
nghĩa sẵn
2.3.2.4.Response:
Đối tợng này đợc dùng để gửi kết quả cho Web Browser
Các phơng thức (Methods)
Add header: Thêm một phần Header mới vào HTML header với một số giá trị chọn
lọc. Phơng thức này luôn luôn thêm vào chứ không ghi đè lên thông tin
đã có sẵn
Cú pháp : Response.AddHeader name, value
Clear: Xoá toàn bộ bộ đệm ra của HTML, phơng thức này chỉ xoá phần thân của
Response chứ không xoá phần Header của Response.
End: Kết thúc việc xử lý ở tệp ASP và gửi về Web Browser những kết quả thu đợc
cho đến lúc xảy ra phơng thức này.
Flush: Khi các thông tin đợc gửi ra bộ đệm kết quả thì những thông tin đó cha đợc
gửi về ngay Web Browser mà chỉ đến khi dùng phơng thức này thì
thông tin sẽ đợc gửi ngay tức khắc về Web Browser. Tuy nhiên cũng sẽ
xảy ra thông báo lỗi Run-time nếu nh Response.Buffer cha đợc đặt giá
trị = True
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
23

Chơng trình quản lý thông tin th viện
Redirect: Phơng thc này dùng để định hớng địa chỉ của trang Web trên Web
Browser trỏ đến một URL khác.
Write: Đây là phơng thức hay dùng nhất để trả về cho Web Browser những
xâu ký tự mà đại điện cho cấu trúc HTML
2.3.2.5. Server:
Đối tợng này cung cấp các phơng thức cũng nh thuộc tính của Server.
Các phơng thức (Methods):
CreatObject: Phơng thức này đợc dùng để tạo ra những đối tợng mới nằm trên
Server. Ví dụ:
<% Set Session("ad") = Server.CreateObject("MSWC.AdRotator")%>
HTMLEncode: Cung cấp khả năng mã hoá các xâu ký tự.
MapPath: Phơng thức này trả về địa chỉ vật lý tơng ứng với địa chỉ th mục ảo trên
máy chủ. Ví dụ:
<%= server.mappath("script/data.txt")%><BR>
Kết quả trả về là:
c:\inetpub\wwwroot\script\script\data.txt<BR>
URLEncode: Cung cấp khả năng mã hoá địa chỉ URL.
2.3.2.6. ObjectContext:
Dùng đối tợng này để chấp nhận hoặc huỷ bỏ các Transaction đợc điều khiển
bởi Microsoft Transaction Server. Khi mà tệp ASP có chứa từ khoá
@TRANSACTION ở trên đầu thì tệp ASP đó sẽ chạy cho đến khi mà Transaction
thực hiện thành công hoặc thất bại.
Các phơng thức (Methods):
Set Complete: Phơng thức này khai báo rằng đoạn script trong ASP không
phụ thuộc vào việc có thực hiện thành công hay không Transaction.
Nếu mọi thành phần trong Transaction mà đều gọi phơng thức này thì
Transaction sẽ đợc hoàn thành.
Set Abort: Phơng thức này khai báo rằng Transaction khởi tạo bằng script
đã không hoàn thành.

Các sự kiện (Events) : OnTransactionCommit, OnTransactionAbout
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
24
Chơng trình quản lý thông tin th viện
2.4.Lập trình ADO (ActiveX Data Objects Programming).
ADO là một ngôn lập trình đơn giản dành cho việc tơng tác với cơ sở dữ liệu
trên Internet và Intranet. ADO có thể đợc sử dụng để viết những scripts gọn nhẹ
dành cho việc kêt nối với ODBC (Open DataBase Connectivity). Trớc khi tạo những
script xử lý cơ sở dữ liệu ADO cần phải đợc cung cấp một cách để định vị, tơng tác
với cơ sở dữ liệu. Việc kết nối với ODBC thông qua các Driver cơ sở dữ liệu. Các
driver cơ sở dữ liệu là các chơng trình đa thông tin từ ứng dụng Web tới cơ sở dữ
liệu. Việc kết nối này sử dụng tên nguồn dữ liệu DSN(Data Source Name). DSN
chứa những thông tin về việc bảo mật, việc tham chiếu tới cơ sở dữ liệu vật lý.
ADO có mô hình đơn giản nh sau:

2.4.1.Đối tợng Connection.
Đối tợng này đợc dùng để tạo một kết nối tới một cơ sở dữ liệu.Dể tạo một
kết nối với cơ sở dữ liệu trớc tiên phải tạo ra một biến Connection sau đó sử dụng
phơng thức Open của đối tợng này.
<%
Set biến_đối_tợngServer.CreateObject(ADODB.Connection)
Biến_đối_tợng.Open DSN=ThuVien
%>
ThuVien là tên một cơ sở dữ liệu nguồn(DSN) mà đã dợc tạo ra trớc đó.
Đối tợng Connection cung cấp phơng thức Execute để thực hiện một truy vấn
trên dữ liệu đã đợc tạo kết nối.
Khoá luận tốt nghiệp (1998-2000) khoa CNTT- ĐHKHTN
25
Connection
Command

Errors
Fields
Parameters
Recordset

×