Tải bản đầy đủ (.pdf) (99 trang)

quản trị và phát triển ứng dụng db2 (áp dụng vào bài toán quản lí hội thảo khoa học)

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 (4.37 MB, 99 trang )

TRƯỜNG ĐẠI HỌC CẦN THƠ
KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG
BỘ MÔN HỆ THỐNG THÔNG TIN & TOÁN ỨNG DỤNG

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC
Đề tài:

QUẢN TRỊ VÀ PHÁT TRIỂN ỨNG DỤNG DB2
(ÁP DỤNG VÀO BÀI TOÁN QUẢN LÍ
HỘI THẢO KHOA HỌC)
Cán bộ hướng dẫn:
TS. Nguyễn Thái Nghe
MSCB: 1352
KS. Nguyễn Minh Khiêm
MSCB:

Sinh viên thực hiện:
Huỳnh Phú Điền
MSSV: 1091657
Tăng Bình Tánh
MSSV: LT11770
Cán bộ phản biện:
ThS. Lê Đức Thắng
MSCB: 0515

Luận văn được bảo vệ tại: Hội đồng chấm luận văn tốt nghiệp Bộ môn Hệ
Thống Thông Tin, Khoa Công nghệ Thông tin, Trường Đại học Cần Thơ vào ngày
14 tháng 05 năm 2013.
Có thể tìm hiểu luận văn tại:
Thư viện Khoa Công nghệ thông tin và Truyền thông, trường Đại học Cần Thơ
Website: />



Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

LỜI CẢM
F ƠN
Sau nhiều nỗ lực và cố gắng thực hiện cuối cùng nhóm chúng em cũng
đã hoàn thành đề tài luận văn tốt nghiệp. Kết quả này không chỉ là sự nỗ lực
của bản thân mà còn có sự đóng góp to lớn từ các thầy cô, bạn bè, gia đình và
người thân – những người đã luôn sát cánh, giúp đỡ chúng em trong suốt quá
trình thực hiện luận văn.
Xin gửi lời cảm ơn chân thành đến quý thầy cô trường ĐHCT nói chung
cũng như thầy cô khoa CNTT & TT nói riêng đã tận tình giảng dạy và truyền
đạt những kiến thức quý báo cho chúng em trong suốt gần 4 năm học vừa
qua.
Đặc biệt, xin bày tỏ lòng biết ơn sâu sắc đến TS. Nguyễn Thái Nghe và
KS. Nguyễn Minh Khiêm đã tận tình hướng dẫn, giúp đỡ và tạo điều kiện
thuận lợi để chúng em hoàn thành tốt Luận văn này.
Cũng không quên gửi lời cảm ơn chân thành đến cha mẹ, bạn bè, người
thân đã luôn quan tâm, ủng hộ và đóng góp ý kiến quý báu để chúng em có
đủ nghị lực hoàn thành tốt luận văn này.
Măc dù đã cố gắng rất nhiều nhưng chắc hẵn luận văn vẫn còn nhiều sai
sót, rất mong nhận được sự góp ý, và lời khuyên từ quý thầy cô và bạn bè để
luận văn ngày càng hoàn thiện hơn.
Xin kính tặng thành quả này đến quý thầy cô, cha mẹ, gửi tặng bạn bè,
người thân bằng tất cả tình cảm yêu thương và chân thành nhất…
Chân thành cảm ơn!.

Tháng 5-2013


GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

i

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………

…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
Cần Thơ, Ngày …. Tháng ….Năm 2013

GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

ii

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………

…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
Cần Thơ, Ngày …. Tháng ….Năm 2013

GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

iii

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền



Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

MỤC LỤC
-----CHƯƠNG I – TỔNG QUAN ............................................................................................................... 3
I.

ĐẶT VẤN ĐỀ ............................................................................................................................... 3

II.

LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ ..................................................................................................... 3

III.

PHẠM VI ..................................................................................................................................... 4

III.1

Phạm vi đề tài ......................................................................................................................... 4

III.2

Hướng giải quyết vấn đề ......................................................................................................... 4

IV.

PHƯƠNG PHÁP THỰC HIỆN ....................................................................................................... 5


CHƯƠNG II – CƠ SỞ LÝ THUYẾT.................................................................................................. 7
I.

HTML .......................................................................................................................................... 7

II.

CSS.............................................................................................................................................. 7

III.

PHP ............................................................................................................................................. 7

IV.

JAVASCRIPT ................................................................................................................................ 8

V.

AJAX ........................................................................................................................................... 8

VI.

HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU DB2 ............................................................................................. 9

VI.1

Tổng quan và cài đặt ............................................................................................................... 9

VI.1.1


Tổng quan ........................................................................................................................... 9

VI.1.1.1

DB2 Express – C là gì ? ...................................................................................................... 9

VI.1.1.2

Các tính năng liên quan và các sản phẩm ...................................................................... 12

VI.1.2

Cài đặt .............................................................................................................................. 12

VI.1.2.1

Cài đặt DB2 Express – C .................................................................................................. 12

VI.1.1.2

Môi trường của DB2 ....................................................................................................... 16

VI.1.1.3

Công cụ DB2 (IBM Data Studio)...................................................................................... 20

VI.2

Quản trị cơ sở dữ liệu ........................................................................................................... 21


VI.2.1

Kiến trúc DB2 ..................................................................................................................... 21

VI.2.1.1

Mô hình xử lý DB2 .......................................................................................................... 21

VI.2.1.2

Mô hình bộ nhớ.............................................................................................................. 23

VI.2.1.3

Mô hình lưu trữ DB2 ...................................................................................................... 24

VI.2.2

Kết nối máy khách DB2 ..................................................................................................... 26

VI.2.2.1

Thư mục DB2 .................................................................................................................. 26

VI.2.2.2

Yêu cầu cài tại máy chủ .................................................................................................. 26

GVHD: TS. Nguyễn Thái Nghe

KS. Nguyễn Minh Khiêm

iv

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).
VI.2.3

Làm việc với các đối tượng dữ liệu ................................................................................... 27

VI.2.3.1

Lược đồ (schemas) ......................................................................................................... 27

VI.2.3.2

Bảng (tables) .................................................................................................................. 27

VI.2.3.3

Khung nhìn (views) ......................................................................................................... 28

VI.2.3.4

Chỉ mục (indexs) ............................................................................................................. 29


VI.2.3.5

Toàn vẹn tham chiếu dử liệu (Referential Integrity)...................................................... 29

VI.2.4

Di chuyển dữ liệu .............................................................................................................. 29

VI.2.4.1

Tổng quan....................................................................................................................... 29

VI.2.4.2

Export ............................................................................................................................. 29

VI.2.4.3

Import ............................................................................................................................ 30

VI.2.4.4

Load & Set Integrity........................................................................................................ 30

VI.2.4.5

Db2move ........................................................................................................................ 30

VI.2.4.6


Db2look .......................................................................................................................... 30

VI.3

Bảo mật cơ sở dữ liệu ........................................................................................................... 31

VI.3.1

Tổng quan ......................................................................................................................... 31

VI.3.2

Chứng thực........................................................................................................................ 31

VI.3.3

Quyền hạn ......................................................................................................................... 32

VI.3.3.1

Đặc quyền....................................................................................................................... 32

VI.3.3.2

Quyền hạn (Authorities)................................................................................................. 33

VI.3.3.3

Nhóm PUBLIC ................................................................................................................. 34


VI.3.3.4

Lệnh Grant & Revoke ..................................................................................................... 34

VI.3.3.5

Tính năng mở rộng trên Windows ................................................................................. 34

VI.4

Sao lưu & phục hồi ................................................................................................................ 35

VI.4.1

Sao lưu cơ sở dữ liệu......................................................................................................... 35

VI.4.2

Khôi phục cơ sở dữ liệu (Restore) ..................................................................................... 35

VI.4.2.1

Các kiểu khôi phục dữ liệu ............................................................................................. 35

VI.4.2.2

Phục hồi dữ liệu ............................................................................................................. 36

VI.4.2.3


Thao tác với câu lệnh Backup & Restore........................................................................ 36

VI.5

Truy cập đồng thời và khóa................................................................................................... 37

VI.5.1

Giao dịch (Transactions).................................................................................................... 37

VI.5.2

Truy xuất đồng thời (Concurrency) và khóa (Locking) ...................................................... 37

VI.5.2.1

Truy suất đồng thời ........................................................................................................ 37

VI.5.2.2

Khóa ............................................................................................................................... 38

VI.5.2.3

Một số vấn đề nếu không có sự kiểm soát truy cập đồng thời ..................................... 39

GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

v


SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).
VI.5.2.4

Các mức cô lập ............................................................................................................... 39

VI.5.2.5

Đặt mức cô lập ............................................................................................................... 41

VI.5.3

Khóa leo thang .................................................................................................................. 41

VI.5.4

Kiểm soát khóa .................................................................................................................. 42

VI.5.5

Chờ khóa ........................................................................................................................... 42

VI.5.6

Vấn đề khóa chết và phát hiện ......................................................................................... 43


VI.5.7

Truy cập đồng thời và thực tiễn khóa tốt nhất ................................................................. 43

VI.6

Phát triển ứng dụng DB2....................................................................................................... 44

VI.6.1

Phát triển ứng dụng máy chủ............................................................................................ 44

VI.6.1.1

Các thủ tục lưu trữ ......................................................................................................... 44

VI.6.1.2

Các hàm do người dùng tự định nghĩa........................................................................... 45

VI.6.1.3

Các bẩy sự kiện .............................................................................................................. 45

VI.6.2

Phát triển ứng dụng máy khách ........................................................................................ 45

VI.6.2.1


SQL nhúng ...................................................................................................................... 45

VI.6.2.2

SQL tĩnh và động ............................................................................................................ 46

VI.6.2.3

CLI và ODBC .................................................................................................................... 47

VI.6.2.4

JDBC, SQLJ và pureQuery ............................................................................................... 48

VI.6.2.5

OLE DB ............................................................................................................................ 49

VI.6.2.6

ADO.NET ........................................................................................................................ 49

VI.6.2.7

PHP ................................................................................................................................. 50

VI.6.2.8

Ruby on Rails .................................................................................................................. 50


VI.6.2.9

Perl ................................................................................................................................. 50

VI.6.2.10

Python ............................................................................................................................ 50

VI.6.2.11

XML và DB2 pureXML ..................................................................................................... 51

VI.6.2.12

Dịch vụ web .................................................................................................................... 51

VI.6.2.13

Làm việc với Microsoft Access và Microsoft Excel ......................................................... 52

CHƯƠNG III – NỘI DUNG VÀ KẾT QUẢ THỰC HIỆN .............................................................. 54
I.

MÔ TẢ HỆ THỐNG .................................................................................................................... 54

I.1

Đặc tả yêu cầu hệ thống....................................................................................................... 54


I.2

Kiến trúc hệ thống................................................................................................................. 55

II.

PHÂN TÍCH HỆ THỐNG ............................................................................................................. 56

II.1

Mô hình mức quan niệm (MCD) ........................................................................................... 56

II.2

Mô hình luận lí (MLD) ........................................................................................................... 57

II.3

Thiết kế bảng ........................................................................................................................ 58

GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

vi

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức

Hội thảo khoa học).
II.4

Lưu đồ dòng dữ liệu (PFD) .................................................................................................... 63

II.4.1

DFD mức 0 ......................................................................................................................... 63

II.4.2

DFD mức 1 ......................................................................................................................... 64

II.4.3

DFD mức 2 ......................................................................................................................... 65

III.

PHÂN TÍCH, THIẾT KẾ WEBSITE ................................................................................................ 67

III.1

Sơ đồ chức năng ................................................................................................................... 67

III.2

Lưu dồ giải thuật ................................................................................................................... 68

III.2.1


Lưu đồ viết bài .................................................................................................................. 68

III.2.2

Lưu đồ phản biện .............................................................................................................. 69

III.2.3

Lưu đồ phân công phản biện ............................................................................................ 70

III.2.4

Lưu đồ xét duyệt bài viết .................................................................................................. 71

IV.

DEMO CHƯƠNG TRÌNH............................................................................................................ 72

IV.1

Giới thiệu............................................................................................................................... 72

IV.2

Các chức năng chính ............................................................................................................. 72

IV.2.1

Trang chủ........................................................................................................................... 72


IV.2.2

Thành viên ......................................................................................................................... 74

IV.2.3

Admin (trang quản trị) ...................................................................................................... 83

CHƯƠNG IV - KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .............................................................. 89
I.

KẾT QUẢ THỰC HIỆN ĐƯỢC..................................................................................................... 89

I.1

Chương trình: ....................................................................................................................... 89

I.2

Người thực hiện: .................................................................................................................. 89

II.

HẠN CHẾ VÀ KHÓ KHĂN........................................................................................................... 89

III.

HƯỚNG PHÁT TRIỂN ................................................................................................................ 90


GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

vii

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

KÍ HIỆU VÀ VIẾT TẮT

STT

Ký hiệu và từ viết tắt

Diễn giải

1

CSDL

Cơ sở dữ liệu

2

HQTCSDL


Hệ quản trị cơ sở dữ liệu

3

DBMS

Database Management System

4

RDBMS

Database Management System Relational

5

KGB

Không gian bảng

6

SGML

Standard Generalized Markup Language

7

HTML


HyperText Markup Language

8

CSS

Cascading Style Sheets

9

XML

eXtensible Markup Language

10

AJAX

Asynchronous JavaScript and XML

11

PHP

Hypertext Preprocessor

12

WYSIWYG


What You See Is What You Get

13

SVG

Scalable Vector Graphics

14

ISVs

Independent software Vendor

15

DAS

DB2 Application Server

16

SMS

System Managed Storage

17

UDF


User-defined Function

18

CLI

Call Level Interface

19

ODBC

Open Database Connectivity

20

JDBC

Java Database Connectivity

21

OLE DB

Object Linking and Embedding Database

22

COM


Component Object Model

23

MVC

Model - View- Controller

24

SOA

Service Oriented Architecture

GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

1

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

TÓM TẮT
Với xu hướng phát triển công nghệ thông tin hiện nay, dữ liệu sinh ra
ngày càng nhiều, việc quản lí dữ liệu ngày càng phức tạp. Vì vậy, vai trò của
các hệ quản trị cơ sở dữ liệu ngày càng trở nên quan trọng trong các giải pháp

công nghệ thông tin. DB2 của IBM là một trong số những DBMS phổ biến,
hoạt động mạnh và nhanh nhất hiện nay, với đầy đủ các tính năng của một
RDBMS và sự hỗ trợ phát triển mạnh mẽ từ các nhà phát triển và cộng đồng
người sử dụng. Việc quản trị và phát triển ứng dụng bằng DB2 nhằm nghiên
cứu và tìm hiểu về hệ quản trị DB2, đồng thời vận dụng những kiến thức tìm
hiểu được để xây dựng các ứng dụng thực tế. Một ứng dụng cụ thể là việc áp
dụng DB2 vào việc giải quyết bài toán “Quản lí Tổ chức hội thảo Khoa học”.
Luận văn sẽ tìm hiểu các kiến thức tổng quan về DB2 và áp dụng xây dựng “
Website Quản lí tổ chức hội thảo Khoa học”.

ABSTRACT
Nowadays, the information technology is developed fastly and data was
generated more and more. So, the management of data becomes more complex.
Therefore, the Database Management System is taken more important in
information solutions. IBM DB2 is one of the popular DBMS, which is strong
and fastest. It has full features of an RDBMS and strong supporting from the
developer and user communities. The management and development
applications using DB2 to study and learn about DB2 Database Management
System, then apply this knowledge to build real application. One specific
application is using DB2 for building website: "Scientific Conference
Managerment". The thesis will discovery about general DB2 and apply it for
making" Scientific Conference Managerment Website ".

GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

2

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền



Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

CHƯƠNG I – TỔNG QUAN
ĐẶT VẤN ĐỀ
Hiện nay, hội thảo Khoa học là hoạt động rất phổ biến và có ý nghĩa rất lớn
đối với sự phát triển tri thức khoa học và đời sống xã hội. Vì vậy việc quản lí dữ
liệu và các khâu viết bài, phản biện, đánh giá…của một hội thảo khoa học là vấn
đề rất đáng để quan tâm và đầu tư thực hiện.
I.

Thông thường việc thực hiện một hội thảo khoa học hiện nay sẽ gặp nhiều
khó khăn và bất lợi như:
 Các bài viết, bài phản biện, thông tin thành viên … gửi về hội thảo phải
được nhập liệu thủ công bằng tay để lưu trữ. Công việc này đòi hỏi chi
phí về thời gian, công sức và đôi khi cũng xảy ra các sai sót khi nhập
liệu
 Những thay đổi, cập nhật, thông tin mới phải được gửi, thông báo đến
từng thành viên, Nếu số lượng thành viên nhiều và thông tin thường
xuyên thay đổi thì công việc này rất tốn thời gian và công sức.
 Việc quảng bá, giới thiệu hội thảo cũng gặp nhiều hạn chế và cũng ít cơ
hội để tìm kiếm các nhà tài trợ cho hội thảo…
Vì vậy, xây dựng website “Quản lí tổ chức hội thảo Khoa học” là một biện
pháp hiệu quả để giải quyết các vấn đề trên. Việc xây dựng website sẽ có các thuận
lợi như sau:
 Mọi cập nhật, thông báo mới của hội thảo sẽ được các thành viên tiếp
nhận dễ dàng và nhanh chóng thông qua giao diện website.
 Việc quảng bá và tìm kiếm nhà tài trợ cũng dễ dàng hơn thông qua môi

trường web.
 Các bài viết, phản biện, thông tin thành viên, thông tin hội thảo… sẽ
được nhập, lưu trữ trực tiếp xuống CSDL mà không cần phải qua trung
gian nhập liệu…
Để quản lí các hội thảo một cách thuận tiện và hợp lí, website cần sử dụng
một hệ quản trị CSDL để quản lí tất cả những dữ liệu có liên quan đến hội thảo.
Sử dụng DB2 vào việc xây dựng website “Quản lí tổ chức hội thảo Khoa
học” không những mang lại kiến thức mới về DB2, mà còn góp phần giải quyết
được vấn đề thực tế đang đặt ra.

LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ
MySQL hiện là máy chủ cơ sở dữ liệu phổ biến nhất được sử dụng với
ngôn ngữ lập trình PHP để xây dựng các ứng dụng web động.

II.

GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

3

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

HIện nay, cũng đã có nhiều website quản lý Hội thảo khoa học được xây
dựng và hoạt động tốt dựa trên sự hỗ trợ của hệ quản trị CSDL MySQL.

Nhìn chung các website cũng đã đáp ứng được các yêu cầu và góp phần vào
sự thành công của các hội thảo. Tuy nhiên, mỗi website chỉ gắn liền với một hội
thảo nhất định, nội dung website chỉ mang tính nhất thời và cố định với một hội
thảo. Sau một kì hội thảo thì website gần như ngừng hoạt động trong thời gian dài,
ví dụ: />DB2 là một cơ sở dữ liệu phổ biến khác được PHP hỗ trợ đầy đủ và cung
cấp các lợi thế hấp dẫn không kém MySQL. Như:





Tài liệu, kinh nghiệm, và sự hỗ trợ của DB2 rất phong phú
Công nghệ Pure (lưu trữ XML nguyên gốc)
An toàn cao
Chi phí cấp giấy phép thấp.

Do đó, việc ứng dụng DB2 vào phát triển website Quản lí tổ chức hội thảo
khoa học là một hướng phát triển mới, đầy triển vọng.
Mục tiêu của luận văn là ứng dụng DB2 vào xây dựng website “Quản lí tổ
chức hội thảo khoa học” và phát triển website hoàn thiện hơn, khắc phục đươc
những hạn chế của các website đã nêu trên.

III.

PHẠM VI

III.1

Phạm vi đề tài
Xây dựng website “Quản lí Tổ chức hội thảo khoa học” phục vụ cho công

tác quản lí hội thảo khoa học trong khuôn vi của trường Đại học Cần Thơ.
Tham khảo và tìm hiểu cách thức, quy trình tổ chức hội thảo khoa học từ
các website Hội thảo khoa học như: />, cũng
như các hiểu biết có được từ các hội thảo thực tế mà trường Đại học Cần Thơ đã tổ
chức.
Website chạy trên nền localhost, với sự hỗ trợ của máy chủ web apache và
máy chủ CSDL DB2. Bao gồm 2 module tương ứng với 2 nhóm người dùng chính
là: thành viên và quản trị.
III.2

Hướng giải quyết vấn đề
Về cơ sở lí thuyết
 Vận dụng các lí thuyết liên quan đến phân tích thiết kế hệ thống
để xây dựng mô hình thực thể kết hợp, mô hình luận lí, lưu đồ dòng dữ
liệu.

GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

4

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

 Tìm hiểu các lí thuyết tổng quan và những nội dung liên quan đến
việc quản trị và phát triển ứng dụng bằng DB2 .

 Các kiến thức về lập trình web và các ngôn ngữ các lập trình như
HTML, PHP, Javscript…
Về chức năng
 Quản trị:
 Thêm mới và cập nhật: hội thảo, đơn vị tài trợ, đơn vị
tham dự, tin tức.
 Phân công phản biện.
 Xét duyệt bài viết.
 Thành viên:
 Viết bài, cập nhật bài viết.
 Phản biện, cập nhật phản biện.
 Tìm kiếm bài viết.
 Cập nhật thông tin cá nhân.
 Góp ý.
Về kĩ thuật:
 Đảm bảo tính chính xác, kiểm tra toàn vẹn dữ liệu, kiểm tra lỗi
phát sinh do người dùng, đảm bảo an toàn, bảo mật.
 Giao diên website thân thiện, trực quan và đầy đủ thông tin.
 Thời gian thưc thi và xử lí đảm bảo yêu cầu (không quá 3s).
 Sử dụng HQTCSDL DB2 trên nền hệ điều hành Window.
 Cài đặt website thực thi với máy chủ web Apache chạy trên
localhost.
 Sử dụng ngôn ngữ lập trình: HTML, PHP, Javascript, Jquery.
IV.

PHƯƠNG PHÁP THỰC HIỆN
Phân chia việc thưc hiện luận văn theo từng giai đoạn. Sắp xếp thời
gian, công việc cho từng giai đoạn cụ thể. Ở mỗi giai đoạn, kết hợp với sự
hướng dẫn của giáo viên, điều chỉnh và xem xét lại thời gian và kế hoạch phù
hợp với những giai đoạn đề ra. Nhìn chung quá trình thực hiện luận văn trải

qua các giai đoạn:
 Tìm hiểu các lí thuyết tổng quan về DB2, đặc biệt là sử dụng
DB2 để phát triển ứng dụng với PHP.
 Cài đặt và cấu hình để PHP làm việc với DB2.
 Tìm hiểu các ứng dụng và tài liệu liên quan đến hệ thống đã được
xây dựng trước đó, tìm hiểu hiện trạng, yêu cầu mục tiêu đề tài.
 Phân tích và thiết kế mô hình CSDL cho website.

GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

5

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).






Thiết kế website đảm bảo các yêu cầu đã đặt ra.
Kiểm thử và chỉnh sửa các lỗi.
Viết báo cáo đề tài.
Đóng gói và cài đặt chương trình.


GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

6

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

CHƯƠNG II – CƠ SỞ LÝ THUYẾT
HTML
HTML (HyperText Markup Language, hay là "Ngôn ngữ Đánh dấu Siêu
văn bản") là một ngôn ngữ đánh dấu được thiết kế ra để tạo nên các trang web với
các mẩu thông tin được trình bày trên World Wide Web. HTML được định nghĩa
như là một ứng dụng đơn giản của SGML (Standard Generalized Markup
Language) và được sử dụng trong các tổ chức cần đến các yêu cầu xuất bản phức
tạp. HTML đã trở thành một chuẩn Internet do tổ chức World Wide Web
Consortium (W3C) duy trì. Phiên bản chính thức mới nhất của HTML là HTML
4.01 (1999). Sau đó, các nhà phát triển đã thay thế nó bằng XHTML. Hiện nay,
HTML đang được phát triển tiếp với phiên bản HTML5 hứa hẹn mang lại diện
mạo mới cho Web.
I.

Bằng cách dùng HTML động hoặc Ajax, lập trình viên có thể được tạo ra và
xử lý bởi số lượng lớn các công cụ, từ một chương trình soạn thảo văn bản đơn
giản – có thể gõ vào ngay từ những dòng đầu tiên – cho đến những công cụ xuất
bản WYSIWYG ( What You See Is What You Get) phức tạp.

HTML không phải là ngôn ngữ lập trình, nó là ngôn ngữ trình bày.
CSS
Trong tin học, các tập tin định kiểu theo tầng – Cascading Style Sheets
(CSS) – được dùng để miêu tả cách trình bày các tài liệu viết bằng ngôn ngữ
HTML và XHTML. Ngoài ra ngôn ngữ định kiểu theo tầng cũng có thể dùng cho
XML (eXtensible Markup Language), SVG ( Scalable Vector Graphics), XUL. Các
đặc điểm kỹ thuật của CSS được duy trì bởi World Wide Web Consortium (W3C).
Thay vì đặt các thẻ qui định kiểu dáng cho văn bản HTML (hoặc XHTML) ngay
trong nội dung của nó, bạn nên sử dụng CSS.
II.

Tác dụng của CSS:
 Hạn chế tối thiểu việc làm rối mã HTML của trang Web bằng các thẻ
quy định kiểu dáng (chữ đậm, chữ in nghiêng, chữ có gạch chân, chữ
màu), khiến mã nguồn của trang Web được gọn gàng hơn, tách nội dung
của trang Web và định dạng hiển thị, dễ dàng cho việc cập nhật nội
dung.
 Tạo ra các kiểu dáng có thể áp dụng cho nhiều trang Web, giúp tránh
phải lặp lại việc định dạng cho các trang Web giống nhau.
PHP
PHP (PHP: Hypertext Preprocessor) là một ngôn ngữ lập trình kịch bản hay
một loại mã lệnh chủ yếu được dùng để phát triển cácứng dụng viết cho máy chủ,
mã nguồn mở, dùng cho mục đích tổng quát. Nó rất thích hợp với web và có thể dễ
dàng nhúng vào trang HTML. Do được tối ưu hóa cho các ứng dụng web, tốc độ
nhanh, nhỏ gọn, cú pháp giống C và Java, dễ học và thời gian xây dựng sản phẩm

III.

GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm


7

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành
một ngôn ngữ lập trình web phổ biến thế giới.
JAVASCRIPT
JavaScript là một ngôn ngữ lập trình kịch bản dựa trên đối tượng được phát
triển từ các ý niệm nguyên mẫu. Ngôn ngữ này được dùng rộng rãi cho các trang
web, nhưng cũng được dùng để tạo khả năng viết script sử dụng các đối tượng nằm
sẵn trong các ứng dụng. Nó vốn được phát triển bởi Brendan Eich tại Hãng truyền
thông Netscape với cái tên đầu tiên Mocha, rồi sau đó đổi tên thành LiveScript, và
cuối cùng thành JavaScript. Giống Java, JavaScript có cú pháp tương tự C, nhưng
nó gần với Self hơn Java. .js là phần mở rộng thường được dùng cho tập tin mã
nguồn JavaScript.

IV.

AJAX
AJAX (Asynchronous JavaScript and XML - nghĩa là "JavaScript và XML
không đồng bộ") là một nhóm các công nghệ phát triển web được sử dụng để tạo
các ứng dụng web động hay các ứng dụng giàu tính Internet (rich Internet
application). Từ Ajax được ông Jesse James Garrett đưa ra và dùng lần đầu tiên
vào tháng 2 nãm 2005 để chỉ kỹ thuật này, mặc dù các hỗ trợ cho Ajax đã có trên

các chương trình duyệt từ 10 nãm trước. Ajax là một kỹ thuật phát triển web có
tính tương tác cao bằng cách kết hợp các ngôn ngữ.

V.

Ưu điểm
 Trong nhiều trường hợp, các trang web chứa rất nhiều nội dung
thông thường trong trang. Nếu sử dụng các phương pháp truyền
thống, những nội dụng đó sẽ phải nạp lại toàn bộ với từng yêu cầu.
Tuy nhiên, nếu sử dụng Ajax, một ứng dụng web có thể chỉ yêu cầu
cho các nội dung cần thiết phải cập nhật, do đó giảm lượng lớn băng
thông và thời gian nạp trang.
 Việc dùng các yêu cầu không đồng bộ (asynchronous request) cho
phép giao diện người dùng của ứng dụng hiển thị trên trình duyệt
giúp người dùng trải nghiệm sự tương tác cao, với nhiều phần riêng
lẻ.
 Việc sử dụng Ajax có thể làm giảm các kết nối đến server, do các mã
kịch bản (script) và các style sheet chỉ phải yêu cầu một lần.
Khuyết điểm
 Các trang web được tạo động không được ghi vào bộ lưu lịch sử lướt
web của trình duyệt, do đó nút "back" (quay lui) của trình duyệt sẽ
mất tác dụng quay lại trang thái trước đó của trang sử dụng Ajax,
thay vào đó sẽ quay lại trang web trước đó mà người dùng ghé thăm.
Để khắc phục có thể dùng các IFrame không hiển thị để gây ra sự
thay đổi trong lịch sử trình duyệt và thay đổi phần neo của URL
(bằng mã a #) khi chạy Ajax và theo dõi những sự thay đổi của nó.
GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

8


SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

 Việc cập nhật các trang web động cũng gây khó khăn cho người
dùng trong việc bookmark (đánh dấu địa chỉ yêu thích) một trạng
thái nào đó của ứng dụng. Cũng có những cách khắc phục cho vấn đề
này, một số trong đó sử dụng mã xác định đoạn (fragment identifier)
URL (phần URL ở sau dấu '#') để lưu vết, và cho phép người dùng
đánh dấu và quay lại một trạng thái nào đó của ứng dụng.
 Do hầu hết các web crawler không thực thi mã JavaScript, các ứng
dụng web sẽ cung cấp một phương thức thay thế để truy cập nội
dung thông thường được truy cập bằng Ajax, để cho phép các máy
tìm kiếm lập chỉ mục chúng.
 Bất kỳ người dùng nào có trình duyệt không hỗ trợ Ajax hay
JavaScript, hoặc đơn giản là đã bị vô hiệu hóa JavaScript, sẽ đương
nhiên không thể sử dụng Ajax. Tương tự, các thiết bị như điện thoại
di động, PDA, và thiết bị đọc màn hình (screen reader) có thể không
hỗ trợ JavaScript hay đối tượng XMLHttp được yêu cầu. Ngoài ra,
các thiết bị đọc màn hình nếu có thể sử dụng Ajax đi nữa cũng vẫn
có thể không đọc chính xác các nội dung động.
 Chế độ same origin policy (chế độ gốc đơn điệu) có thể không cho
phép sử dụng Ajax thông qua các tên miền, mặc dù W3C đã có một
đồ án sơ thảo để cho phép điều này.
 Việc thiếu các chuẩn cơ bản của Ajax đồng nghĩa với việc không có
nhiều sự chọn lựa thực tiễn tốt nhất để kiểm tra các ứng dụng Ajax.

Các công cụ kiểm thử cho Ajax thường không hiểu các mô hình sự
kiện, mô hình dữ liệu và giao thức của Ajax.
 Mở ra một cách thức khác cho việc tấn công của các đoạn mã độc
mà những nhà phát triển web có thể không kiểm thử hết được.
HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU DB2

VI.
VI.1

Tổng quan và cài đặt

VI.1.1

Tổng quan

VI.1.1.1 DB2 Express – C là gì ?
Một sản phẩm dòng DB2 của IBM
 Ra đời 6/1983, chạy trên máy chủ (Mainframe) với z/OS.
 Khoảng giữa những năm 1990 bắt đầu có DB2 chạy trên các máy
Desktop.
 Hiện nay có DB2 chạy trên z/OS (mainframe) , trên iSeries (AS400OS400), trên LUV (Linux, Unix, Windows).
DB2 Express – C là ấn bản miễn phí, không giới hạn, dễ sử dụng (C:
Community).
GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

9

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền



Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

 Nhà phát triển phần mền cơ sở dữ liệu khách – chủ.
 ISVs (Independent software vendor) – nhà cung cấp phần mềm độc lập,
cho thuê phần cứng, cung cấp giải pháp.
 Công ty vừa và nhỏ.
 Nghiên cứu, học tập.
 Đầy đủ tính năng trên nền hệ điều hành Linux, Unix, Windows.
 Chạy được trên cả nền tảng 32bit hoặc 64bit.
 Bao gồm cả pureXML.
Đặc điểm khi sữ dụng DB2 Express – C





Tự do phát triển.
Tự do triển khai.
Tự do phân phối.
Không giới hạn.

Máy chủ DB2

Hình 1. Máy chủ db2
Hình 1Máy chủ DB2

GVHD: TS. Nguyễn Thái Nghe

KS. Nguyễn Minh Khiêm

10

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

Máy khách DB2

Hình 2 Máy khách DB2

Ngôn ngữ phát triển
 Ruby trên Rails, C/C++ (ODBC và SQL nhúng), JDBC và SQLJ,
COBOL, Borland, Python, PHP, Perl, Ngôn ngữ .NET, OLE – DB,
ADO, Dịch vụ Web (Web Service), SQL, Microsoft Office : Excel,
Access, Word.
Phiên bản (version) và ấn bản (edition)



Phiên bản là bản phát hành được bổ sung tính năng mới và sửa lỗi.
Ấn bản là những gói sản phẩm với những chức năng khác nhau.
Hổ trợ kỹ thuật

 Bản quyền 12 tháng.
 Hỗ trợ kỹ thuật từ cộng đồng.

Một số phần mền miễn phí liên quan
 Bộ công cụ phát triển IBM Data Studio
 Máy chủ nhúng DB2 Embedded Application Server.
 Mở rộng tìm kiếm DB2 Net Search Extender.
 Hổ trợ phát triển ứng dụng web.
GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

11

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

VI.1.1.2

Các tính năng liên quan và các sản phẩm

Chức năng của DB2 Express – C (miễn phí)






Nhân của DB2
Data Studio

PureXML
GB bộ nhớ và 2 bộ xử lý
Linux, Windows và Solaris (x86)

Chức năng DB2 có phí

Hình 3. Các chức năng trong từng phiên bản

VI.1.2

Cài đặt

VI.1.2.1

Cài đặt DB2 Express – C

Điều kiện cài đặt





Hệ điều hành Linux, Solaris, Windows (2000, 2003, XP, Vista, 7, 8).
Vi xử lý 32bit, 64bit, PowerPC (Linux).
2GB RAM.
Quyền cài đặt trên hệ điều hành (Root trên Linux, nhóm quản trị hoặc
có quyền cài đặt trên Windows).
Hướng dẫn cài đặt từng bước





Windows : chạy SETUP.EXE trong EXP
Linux: chạy db2setup trong EXP.

GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

12

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

Hình 4. Click : Install New

Hình 5. Click : Next

GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

13

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền



Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

Hình 6. Chọn: I accept both the IBM and the non-IBM terms -> click: Next

Hình 7. Mặc định : Typical -> click: Next

GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

14

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

Hình 8. Click: Next

Hình 9. Chọn đường dẫn cài đặt -> Click: Next

GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

15

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền



Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

Hình 10. Điền tài khoản và mật khẩu; click: Next sau đó tiến hành cài đặt

VI.1.1.2

Môi trường của DB2

Các thể hiện (instances)

Hình 11. Thể hiện (instance)

GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

16

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


Đề tài: Quản trị và Phát triển ứng dụng bằng DB2 (Áp dụng vào bài toán quản lý Tổ chức
Hội thảo khoa học).

 Tạo một thể hiện : db2icrt <tên thể hiện>
 Chuyển đổi giữa các Instance.
 set db2instance = <tên thể hiện>

 Linux: chuyển người sử dụng bằng su
 Hiển thị danh sách các instance trên Server : db2ilist
 Hiển thị instance hiện tại : db2 get instance
Tóm tắt :
db2start

Khởi động thể hiện hiện tại

db2stop

Dừng thể hiện hiện tại

db2icrt

Tạo một thể hiển mới

db2idrop

Loại bỏ một thể hiển

db2ilist

Liệt kê các thể hiện đang có trong hệ thống

db2 get instance

Liệt kê các thể hiện đang hoạt động

Cơ sở dử liệu
 Tạo cơ sở dử liệu trong một instance: db2 create database mydb1

 Hiển thị danh sách các cơ sở dữ liệu trong instance: db2 list db
directory
 Một số lệnh làm việc với cơ sở dữ liệu:
 db2 create database : Tạo cơ sở dử liệu mới
 db2 drop database : Xóa cơ sở dữ liệu
 db2 connect to <database name> : Kết nối đến CSDL
 Tạo cơ sở dữ liệu trên instance khác:
 db2 list db directory
 set db2instance=myinst
 db2 create database mydb1
 set db2instance=db2

Hình 12. Tạo CSDL trong 1 thể hiện khác
GVHD: TS. Nguyễn Thái Nghe
KS. Nguyễn Minh Khiêm

17

SVTH: Tăng Bình Tánh
Huỳnh Phú Điền


×