Nhận thấy tính thiết thực của vấn đề này và được sự gợi ý của giáo viên hướng dẫn, em đã chọn đề tài “Tích hợp cơ sở dữ liệu quan hệ và XML” làm đề tài cho luận văn tốt nghiệp của mình.
Trang 1Vũ Thị Tuyết - CNTT
LỜI CAM ĐOAN
Tôi xin cam đoan, kết quả của luận văn là kết quả do bản thân tôi tự tìm hiểu, nghiên cứu và tổng hợp từ nhiều nguồn tài liệu khác nhau Luận văn tốt nghiệp là kết quả của quá trình học tập, nghiên cứu và thực hiện hoàn toàn nghiêm túc, trung thực của bản than Các tài liệu tham khảo được trích dẫn và chú thích đầy đủ
Thái Nguyên, ngày 15/10/2010
Người cam đoan
Vũ Thị Tuyết
Trang 2Trước tiên tôi xin gửi lời cảm ơn chân thành nhất đến thầy PGS TS Đoàn Văn Ban đã định hướng và nhiệt tình hướng dẫn, giúp đỡ tôi rất nhiều
về mặt chuyên môn trong quá trình làm luận văn
Tôi xin gửi lời biết ơn sâu sắc đến các thầy, các cô đã dạy dỗ và truyền đạt những kinh nghiệm quý báu cho chúng tôi trong suốt hai năm học cao học tại khoa Công nghệ thông tin - Đại học Thái Nguyên
Tôi xin cảm ơn bạn bè, đồng nghiệp và gia đình, những người luôn gần gũi động viên, chia sẻ cùng tôi trong suốt thời gian làm luận văn tốt nghiệp
Thái Nguyên, tháng 11 năm 2010
Trang 3Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
i
MỤC LỤC
Trang Trang phụ bìa
Lời cam đoan
Lời cảm ơn
MỤC LỤC i
DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT iii
MỞ ĐẦU 1
CHƯƠNG 1: TỔNG QUAN VỀ XML VÀ CƠ SỞ DỮ LIỆU QUAN HỆ 4
1.1 Tổng quan về XML 4
1.1.2 Cấu trúc của tài liệu XML 4
1.1.2.1 Tài liệu XML 4
1.1.2.2 Cấu trúc của tài liệu XML 5
1.1.3 Các thành phần cơ bản trong tài liệu XML 6
1.1.4 Cấu trúc tài liệu XML hợp khuôn dạng 11
1.1.5 Định nghĩa kiểu tài liệu DTD (Document Type Definition) 13
1.1.6 Lược đồ XML (XML schema) 15
1.1.7 Bảng định kiểu CSS (Cascading Style Sheet) 16
1.1.8 Mô hình DOM (Document Object Model) 18
1.1.9 Phân tích tài liệu XML theo mô hình DOM 20
1.2 Cơ sở dữ liệu quan hệ 21
1.2.1 Cấu trúc cơ sở dữ liệu quan hệ 21
1.2.2 Ràng buộc toàn vẹn trên một cơ sở dữ liệu quan hệ 24
1.2.2.1 Định nghĩa 24
1.2.2.2 Các yếu tố của ràng buộc toàn vẹn 24
1.2.3 Chuẩn hóa một cơ sở dữ liệu quan hệ 25
1.3 Kết luận 27
CHƯƠNG 2: TÍCH HỢP CÁC HỆ THỐNG CƠ SỞ DỮ LIỆU QUAN HỆ VÀ XML 28
2.1 Phương pháp luận 28
2.1.1 Đối sánh nội dung của một CSDL quan hệ và một tài liệu XML 29
Trang 42.1.2 Cấu trúc và kiểu cơ chế của một tài liệu XML và một lược đồ
CSDL quan hệ 31
2.1.3 Tên duy nhất 34
2.1.4 Các giá trị rỗng và các giá trị mặc định 35
2.1.5 Quan hệ 36
2.1.6 Thứ tự 38
2.2 Chuyển một tài liệu XML sang một cơ sở dữ liệu quan hệ 39
2.3 Chuyển một CSDL quan hệ thành một tài liệu XML 41
2.3.1 Phi chuẩn các lược đồ quan hệ 42
2.3.2 Kết nối các CSDL đã phi chuẩn 45
2.3.3 Ánh xạ một CSDL quan hệ đã kết nối thành một DOM chính và chuyển thành một tài liệu XML 47
2.4 Kết luận 51
CHƯƠNG 3: THUẬT TOÁN TÍCH HỢP CÁC HỆ THỐNG CƠ SỞ DỮ LIỆU QUAN HỆ VÀ XML 52
3.1 Thuật toán 52
3.1.1 Đọc tài liệu XML dưới dạng sơ đồ hình cây 52
3.1.2 Hiển thị tài liệu XML dưới dạng bảng 54
3.1.3 Chuyển một CSDL quan hệ sang một tài liệu XML 55
3.2 Cài đặt thuật toán 55
3.3 Đánh giá kết quả 59
3.4 Kết luận 59
CHƯƠNG IV: CÀI ĐẶT THỬ NGHIỆM 60
4.1 Yêu cầu cài đặt: 60
- Phần mềm: 60
4.2 Giao diện của chương trình như sau: 60
KẾT LUẬN 67
TÀI LIỆU THAM KHẢO 69
Trang 5Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
iii
DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT
Trang 6MỞ ĐẦU
1 Lý do chọn đề tài
Hiện nay có rất nhiều các giao dịch, tương tác thông qua Internet được phát triển rầm rộ, hàng loạt các ngôn ngữ và các giao thức giao tiếp, thiết kế trang web cũng ra đời để phục vụ cho những mục đích nhất định Có thể kể đến nhiều ngôn ngữ đã phổ biến như HTML, DHTML, Java, PHP, ASP,… mỗi loại có ưu và nhược điểm riêng
Ngôn ngữ XML (eXtensible Markup Language) mới phát triển trong
thời gian gần đây và được phổ biến rộng rãi (ở các ngôn ngữ NET) Không giới hạn và định nghĩa sẵn như HTML, XML cho phép người dùng tự định nghĩa ra các thành phần riêng và mở rộng tuỳ ý
XML trở nên phổ biến có rất nhiều nguyên nhân Điểm quan trọng nhất
là XML cho phép dễ dàng xử lý, chuyển tải và trao đổi dữ liệu giữa nhiều ứng dụng và tài liệu người dùng với các định dạng khác nhau
Nhận thấy tính thiết thực của vấn đề này và được sự gợi ý của giáo viên
hướng dẫn, em đã chọn đề tài “Tích hợp cơ sở dữ liệu quan hệ và XML” làm
đề tài cho luận văn tốt nghiệp của mình
2 Mục đích nghiên cứu
Luận văn tập trung tìm hiểu về XML và mô hình DOM, phương pháp
sử dụng mô hình DOM để chuyển một cơ sở dữ liệu quan hệ sang tài liệu XML và ngược lại
3 Đối tượng nghiên cứu
Trang 7Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
2
4 Giả thiết khoa học
Nếu chúng ta sử dụng công nghệ XML thì chúng ta không những có thể phát triển một tài liệu XML mới trong khi vẫn sử dụng các cơ sở dữ liệu đang tồn tại mà còn có thể trích rút các dữ liệu từ các tài liệu XML
5 Nhiệm vụ nghiên cứu
nghiên cứu tiếp theo căn cứ vào các kết quả đã đạt được
6 Phạm vi nghiên cứu
Luận văn tập trung nghiên cứu các kiến thức có liên quan, các cơ sở lý thuyết: tài liệu XML, mô hình DOM, lý thuyết cơ sở dữ liệu, thuật toán chuyển đổi giữa cơ sở dữ liệu quan hệ và XML
7 Phương pháp nghiên cứu
Đọc tài liệu: sách, báo và các tài liệu liên quan
Phân tích - tổng hợp lý thuyết và xây dựng các thuật toán chuyển đổi một cơ sở dữ liệu quan hệ sang dạng tài liệu XML và ngược lại
Luận văn được trình bày gồm bốn chương:
Chương 1: “Tổng quan về XML và cơ sở dữ liệu quan hệ” – Trình
bày tổng quan về cấu trúc một tài liệu XML, định nghĩa kiểu tài liệu DTD,
Trang 8lược đồ, mô hình đối tượng tài liệu DOM, phân tích tài liệu XML theo mô hình DOM và các khái niệm cơ sở về cơ sở dữ liệu (CSDL) quan hệ
Chương 2: “Tích hợp các hệ thống cơ sở dữ liệu và XML” – Giới
thiệu phương pháp luận chuyển một tài liệu XML sang một CSDL quan hệ và ngược lại
Chương 3: “Thuật toán tích hợp các hệ thống cơ sở dữ liệu quan hệ và
XML” – Đưa ra thuật toán tích hợp các hệ thống cơ sở dữ liệu quan hệ và XML
Chương 4: “Cài đặt thử nghiệm” – Trình bày việc cài đặt thuật toán
bằng ngôn ngữ lập trình C# trong môi trường ASP.NET, trên cơ sở xây dựng ứng dụng trang web “Đăng ký học tín chỉ” của trường Đại học Hàng Hải Việt Nam
Và phần cuối Kết luận – Tóm tắt các nội dung chính, các kết quả đạt
được và hướng nghiên cứu tiếp theo của luận văn
Trang 9Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
4
CHƯƠNG 1: TỔNG QUAN VỀ XML VÀ CƠ SỞ DỮ LIỆU QUAN HỆ 1.1 Tổng quan về XML
1.1.1 Giới thiệu công nghệ XML
XML (viết tắt từ tiếng Anh eXtensible Markup Language, “Ngôn ngữ
Đánh dấu Mở rộng”) [2], [11] là ngôn ngữ đánh dấu với mục đích chung do W3C đề nghị, để tạo ra các ngôn ngữ đánh dấu khác Đây là một tập con đơn giản của SGML, có khả năng mô tả nhiều loại dữ liệu khác nhau Mục đích chính của XML là đơn giản hóa việc chia sẻ dữ liệu giữa các hệ thống khác nhau, đặc biệt là các hệ thống được kết nối với Internet Các ngôn ngữ dựa trên XML (thí dụ: RDF, RSS, MathML, XHTML, SVG, GML và Cxml) được định nghĩa theo cách thông thường, cho phép các chương trình sửa đổi và kiểm tra hợp lệ bằng các ngôn ngữ này mà không cần có hiểu biết trước về hình thức của chúng
1.1.2 Cấu trúc của tài liệu XML
1.1.2.1 Tài liệu XML
Một tài liệu HTML có thể tồn tại một số thẻ không đúng quy định (trình biên dịch sẽ bỏ qua những thẻ này) Tuy nhiên với một tài liệu XML thì điều này không thể xảy ra Khi xây dựng một tài liệu XML, nó phải tuân thủ theo một số quy luật nào đó Những tài liệu XML tuân thủ đúng những quy luật này được gọi là well-formed (tạm dịch là định dạng đúng) Với một tài liệu không phải là well–formed, Internet Explorer sẽ thông báo lỗi khi nạp tài liệu này
liệu XML được xem là hợp lệ nếu nó đảm bảo những quy tắc đặc tả trong tài liệu Document Type Definition (DTD) hay giản đồ (schema) Một DTD hay schema sẽ định nghĩa mọi thứ từ cấu trúc dữ liệu tới kiểu dữ liệu, những thuộc tính được yêu cầu, và những ràng buộc về thành phần và thuộc tính được kết
Trang 10hợp trong tài liệu Phương thức kiểm tra tài liệu này thường được sử dụng trong giao tiếp giữa ứng dụng – ứng dụng, đảm bảo dữ liệu trao đổi hợp lệ tránh dẫn tới những ảnh hưởng của dữ liệu không hợp lệ trên toàn hệ thống
Tài liệu XML có thể viết bằng trình soạn thảo thông thường (Notepad), hay các trình soạn thảo chuyên dụng của XML: XML Notepad, XMLWriter, XML Spy,
1.1.2.2 Cấu trúc của tài liệu XML
Tài liệu XML chỉ chứa đựng dữ liệu và cách lưu trữ dữ liệu mà không
hề đề cập tới cách thức trình bày dữ liệu Một tài liệu XML sẽ chứa những đặc tả về cấu trúc dữ liệu Mỗi cấu trúc gồm nhiều phần tử (element), mỗi phần tử được bắt đầu với một thẻ bắt đầu (Start–tag) và kết thúc với một thẻ kết thúc (End–tag) Giữa Start–tag và End–tag là nội dung của phần tử này Nội dung có thể bao gồm dữ liệu văn bản hay có thể là một phần tử khác
Một tài liệu XML có thể được chia thành 2 thành phần chính, mỗi thành phần có thể có các thành phần theo quy định khác nhau
Hình 1.1 Cấu trúc tài liệu XML
Phần mở đầu (PROLOG) chứa các khai báo trong tài liệu XML như: khai báo phiên bản sử dụng của XML, cách thức mã hóa dữ liệu, chỉ thị xử
lý, định nghĩa kiểu tài liệu cho tài liệu DTD, các chú thích, các khoảng trắng
Phần mở đầu
Phần nội dung Khai báo
Mô tả cấu trúc tài liệu
Trang 11data error !!! can't not
read
Trang 12data error !!! can't not
read
Trang 13data error !!! can't not
read
Trang 14data error !!! can't not
read
Trang 15data error !!! can't not
read
Trang 17data error !!! can't not
read
Trang 18data error !!! can't not
read
Trang 19data error !!! can't not
read
Trang 20data error !!! can't not
read
Trang 21data error !!! can't not
read
Trang 22data error !!! can't not
read
data error !!! can't not
read
Trang 23data error !!! can't not
read
data error !!! can't not
read
Trang 24data error !!! can't not
read
data error !!! can't not
read
Trang 26read
Trang 27data error !!! can't not
read