Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 74 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
74
Dung lượng
2,06 MB
Nội dung
Vũ Thị Tuyết - CNTT LỜI CAM ĐOAN Tôi xin cam đoan, kết luận văn kết thân tơi tự tìm hiểu, nghiên cứu tổng hợp từ nhiều nguồn tài liệu khác Luận văn tốt nghiệp kết trình học tập, nghiên cứu thực hoàn toàn nghiêm túc, trung thực than Các tài liệu tham khảo trích dẫn thích đầy đủ Thái Nguyên, ngày 15/10/2010 Người cam đoan Vũ Thị Tuyết LỜI CẢM ƠN Trước tiên xin gửi lời cảm ơn chân thành đến thầy PGS TS Đoàn Văn Ban định hướng nhiệt tình hướng dẫn, giúp đỡ tơi nhiều mặt chun mơn q trình làm luận văn Tôi xin gửi lời biết ơn sâu sắc đến thầy, cô dạy dỗ truyền đạt kinh nghiệm quý báu cho suốt hai năm học cao học 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 gia đình, người gần gũi động viên, chia sẻ 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 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 CHƢƠNG 1: TỔNG QUAN VỀ XML VÀ CƠ SỞ DỮ LIỆU QUAN HỆ 1.1 Tổng quan XML 1.1.2 Cấu trúc tài liệu XML 1.1.2.1 Tài liệu XML 1.1.2.2 Cấu trúc tài liệu XML 1.1.3 Các thành phần tài liệu XML 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ở liệu quan hệ 21 1.2.1 Cấu trúc sở liệu quan hệ 21 1.2.2 Ràng buộc toàn vẹn sở liệu quan hệ 24 1.2.2.1 Định nghĩa 24 1.2.2.2 Các yếu tố ràng buộc toàn vẹn 24 1.2.3 Chuẩn hóa sở 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 CSDL quan hệ tài liệu XML 29 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ii 2.1.2 Cấu trúc kiểu chế tài liệu XML lƣợc đồ CSDL quan hệ 31 2.1.3 Tên 34 2.1.4 Các giá trị rỗng giá trị mặc định 35 2.1.5 Quan hệ 36 2.1.6 Thứ tự 38 2.2 Chuyển tài liệu XML sang sở liệu quan hệ 39 2.3 Chuyển CSDL quan hệ thành tài liệu XML 41 2.3.1 Phi chuẩn lƣợc đồ quan hệ 42 2.3.2 Kết nối CSDL phi chuẩn 45 2.3.3 Ánh xạ CSDL quan hệ kết nối thành DOM chuyển thành tài liệu XML 47 2.4 Kết luận 51 CHƢƠNG 3: THUẬT TỐ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 52 3.1.2 Hiển thị tài liệu XML dƣới dạng bảng 54 3.1.3 Chuyển CSDL quan hệ sang tài liệu XML 55 3.2 Cài đặt thuật toán 55 3.3 Đánh giá kết 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 chƣơng trình nhƣ sau: 60 KẾT LUẬN 67 TÀI LIỆU THAM KHẢO 69 Số hóa 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 CSDL Cơ sở liệu quan hệ CSS Cascading Style Sheets DOM Document Object Model DTD Document Type Definition HTML Hyperlink Text Markup Language ODBC Open Database Connectivity SGML Standard Generalized Markup Language SQL Structured Query Language URL Uniform Resource Locator URI Uniform Resource Identifier W3C World Wide Web Consortium XML eXtensible Markup Language XSL eXtensible Stylesheet Language XSLT eXtensible Stylesheet Language Transformations Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn MỞ ĐẦU Lý chọn đề tài Hiện có nhiều giao dịch, tƣơng tác thông qua Internet đƣợc phát triển rầm rộ, hàng loạt ngôn ngữ giao thức giao tiếp, thiết kế trang web đời để phục vụ cho mục đích định Có thể kể đến nhiều ngôn ngữ phổ biến nhƣ HTML, DHTML, Java, PHP, ASP,… loại có ƣu nhƣợc điểm riêng Ngôn ngữ XML (eXtensible Markup Language) phát triển thời gian gần đƣợc phổ biến rộng rãi (ở ngôn ngữ NET) Không giới hạn định nghĩa sẵn nhƣ HTML, XML cho phép ngƣời dùng tự định nghĩa thành phần riêng mở rộng tuỳ ý XML trở nên phổ biến có nhiều nguyên nhân Điểm quan trọng XML cho phép dễ dàng xử lý, chuyển tải trao đổi liệu nhiều ứng dụng tài liệu ngƣời dùng với định dạng khác Nhận thấy tính thiết thực vấn đề đƣợc gợi ý giáo viên hƣớng dẫn, em chọn đề tài “Tích hợp sở liệu quan hệ XML” làm đề tài cho luận văn tốt nghiệp Mục đích nghiên cứu Luận văn tập trung tìm hiểu XML mơ hình DOM, phƣơng pháp sử dụng mơ hình DOM để chuyển sở liệu quan hệ sang tài liệu XML ngƣợc lại Đối tƣợng nghiên cứu Tìm hiểu cơng nghệ XML Tìm hiểu sở liệu quan hệ Cách chuyển đổi tài liệu XML sang sở liệu Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Cách chuyển sở liệu quan hệ sang tài liệu XML Giả thiết khoa học Nếu sử dụng cơng nghệ XML khơng phát triển tài liệu XML sử dụng sở liệu tồn mà cịn trích rút liệu từ tài liệu XML Nhiệm vụ nghiên cứu Nghiên cứu XML Nghiên cứu giải pháp thực chuyển đổi XML sở liệu quan hệ Xây dựng đƣợc ứng dụng cụ thể dựa kết nghiên cứu Đồng thời luận văn mong muốn nêu đƣợc số hƣớng nghiên cứu vào kết đạt đƣợc Phạm vi nghiên cứu Luận văn tập trung nghiên cứu kiến thức có liên quan, sở lý thuyết: tài liệu XML, mơ hình DOM, lý thuyết sở liệu, thuật toán chuyển đổi sở liệu quan hệ XML Phƣơng pháp nghiên cứu Đọc tài liệu: sách, báo tài liệu liên quan Phân tích - tổng hợp lý thuyết xây dựng thuật toán chuyển đổi sở liệu quan hệ sang dạng tài liệu XML ngƣợc lại Khai thác ngơn ngữ lập trình C# để viết chƣơng trình Demo Luận văn đƣợc trình bày gồm bốn chƣơng: Chƣơng 1: “Tổng quan XML sở liệu quan hệ” – Trình bày tổng quan cấu trúc tài liệu XML, định nghĩa kiểu tài liệu DTD, Số hóa Trung tâm Học liệu – Đại học Thái Ngun http://www.lrc-tnu.edu.vn lƣợ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 khái niệm sở sở liệu (CSDL) quan hệ Chƣơng 2: “Tích hợp hệ thống sở liệu XML” – Giới thiệu phƣơng pháp luận chuyển tài liệu XML sang CSDL quan hệ ngƣợc lại Chƣơng 3: “Thuật tốn tích hợp hệ thống sở liệu quan hệ XML” – Đƣa thuật tốn tích hợp hệ thống sở liệu quan hệ XML Chƣơng 4: “Cài đặt thử nghiệm” – Trình bày việc cài đặt thuật tốn ngơn ngữ lập trình C# mơi trƣờng ASP.NET, sở xây dựng ứng dụng trang web “Đăng ký học tín chỉ” 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 nội dung chính, kết đạt đƣợc hƣớng nghiên cứu luận văn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn CHƢƠNG 1: TỔNG QUAN VỀ XML VÀ CƠ SỞ DỮ LIỆU QUAN HỆ 1.1 Tổng quan 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] ngôn ngữ đánh dấu với mục đích chung W3C đề nghị, để tạo ngôn ngữ đánh dấu khác Đây tập đơn giản SGML, có khả mơ tả nhiều loại liệu khác Mục đích XML đơn giản hóa việc chia sẻ liệu hệ thống khác nhau, đặc biệt hệ thống đƣợc kết nối với Internet Các ngôn ngữ dựa XML (thí dụ: RDF, RSS, MathML, XHTML, SVG, GML Cxml) đƣợc định nghĩa theo cách thông thƣờng, cho phép chƣơng trình sửa đổi kiểm tra hợp lệ ngôn ngữ mà không cần có hiểu biết trƣớc hình thức chúng 1.1.2 Cấu trúc tài liệu XML 1.1.2.1 Tài liệu XML Một tài liệu HTML tồn số thẻ khơng quy định (trình biên dịch bỏ qua thẻ này) Tuy nhiên với tài liệu XML điều khơng thể xảy Khi xây dựng tài liệu XML, phải tuân thủ theo số quy luật Những tài liệu XML tuân thủ quy luật đƣợc gọi well-formed (tạm dịch định dạng đúng) Với tài liệu well–formed, Internet Explorer thông báo lỗi nạp tài liệu Một tài liệu XML well–formed chƣa tài liệu hợp lệ Một tài liệu XML đƣợc xem hợp lệ đảm bảo quy tắc đặc tả tài liệu Document Type Definition (DTD) hay giản đồ (schema) Một DTD hay schema định nghĩa thứ từ cấu trúc liệu tới kiểu liệu, thuộc tính đƣợc yêu cầu, ràng buộc thành phần thuộc tính đƣợc kết Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn hợp tài liệu Phƣơng thức kiểm tra tài liệu thƣờng đƣợc sử dụng giao tiếp ứng dụng – ứng dụng, đảm bảo liệu trao đổi hợp lệ tránh dẫn tới ảnh hƣởng liệu không hợp lệ tồn hệ thống Tài liệu XML viết trình soạn thảo thơng thƣờng (Notepad), hay trình soạn thảo chuyên dụng XML: XML Notepad, XMLWriter, XML Spy, 1.1.2.2 Cấu trúc tài liệu XML Tài liệu XML chứa đựng liệu cách lƣu trữ liệu mà không đề cập tới cách thức trình bày liệu Một tài liệu XML chứa đặc tả cấu trúc liệu Mỗi cấu trúc gồm nhiều phần tử (element), phần tử đƣợc bắt đầu với thẻ bắt đầu (Start–tag) kết thúc với thẻ kết thúc (End–tag) Giữa Start–tag End–tag nội dung phần tử Nội dung bao gồm liệu văn phần tử khác Một tài liệu XML đƣợc chia thành thành phần chính, thành phần có thành phần theo quy định khác Phần mở đầu Khai báo Mơ tả cấu trúc tài liệu Phần nội dung Hình 1.1 Cấu trúc tài liệu XML Phần mở đầu (PROLOG) chứa khai báo tài liệu XML nhƣ: khai báo phiên sử dụng XML, cách thức mã hóa liệu, thị xử lý, định nghĩa kiểu tài liệu cho tài liệu DTD, thích, khoảng trắng Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 55 Hình 3.3 Hiển thị tài liệu XML dạng bảng 3.1.3 Chuyển CSDL quan hệ sang tài liệu XML Để chuyển CSDL quan hệ thành tài liệu XML, ta thực tạo nguồn liệu ODBC từ CSDL quan hệ phi chuẩn (sử dụng công cụ Administrative Tools Windows) Sau thực thuật tốn sau: Thuật toán: o Xây dựng lớp kết nối với JDBC - ODBC để kết nối liệu đƣợc xây dựng môi trƣờng MS Access hay SQL Server o Tạo kết nối CSDL quan hệ cần chuyển đổi thành tài liệu XML thông qua truy vấn SQL o Chuyển đổi liệu kết nối sang tài liệu XML thông qua nguyên tắc ánh xạ trình bày 3.2 Cài đặt thuật tốn Thuật tốn đƣợc cài đặt ngơn ngữ lập trình C# [3] Các CSDL quan hệ đƣợc sử dụng chƣơng trình đƣợc tạo lập từ môi trƣờng CSDL MS Access hay SQL Server Các tài liệu XML đƣợc tạo lập mơi Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 56 trƣờng WordPad, NotePad, XML Editor, … Chi tiết giao diện cài đặt cụ thể thuật tốn tích hợp hệ thống CSDL quan hệ XML đƣợc mô nhƣ sau: Đọc tài liệu XML dƣới dạng sơ đồ hình cây: Một tài liệu XML đƣợc đọc vào chƣơng trình đƣợc hiển thị dƣới dạng cấu trúc hình // Tao mot tai lieu XML theo mo hinh DOM da co san du lieu XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(Server.MapPath("SinhVien.xml")); // Khoi tao dieu khien TreeView TreeView1.Nodes.Clear(); TreeView1.Nodes.Add(new TreeNode(xmlDoc.DocumentElement.Name)); TreeNode tNode = new TreeNode(); tNode = TreeView1.Nodes[0]; // Hien thi len TreeView theo mo hinh DOM AddNode(xmlDoc.DocumentElement, tNode); TreeView1.ExpandAll(); // AddNode: XmlNode xNode; TreeNode tNode; XmlNodeList xNodeList; int i; // Kiem tra file XML // Them cac Node vao TreeView qua trinh lap if (xmlNode.HasChildNodes) { xNodeList = xmlNode.ChildNodes; //Lay danh sach cac phan tu cua Node for (i = 0; i Tin học bản Dành cho SV năm thứ nhất Chèn: ngƣời sử dụng nhập thơng tin xác mã môn học, tên môn học, ghi (nếu có) Các thơng tin đƣợc ghi tiếp vào file xml tạo Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 63 Tin học bản Dành cho SV năm thứ nhất Tin học văn phòng Dành cho SV năm thứ nhất Triết học Dành cho SV năm thứ nhất Vật lý SV Ngành Vật lý Cấu trúc DL GT SV CNTT Sửa: cho phép sửa lại thông tin chƣa chuẩn file xml, sau đƣợc lƣu lại vào file Hình 4.5 Form chỉnh sửa thơng tin mơn học Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 64 Trên hình minh họa sửa môn học Vật lý thành Vật lý đại cƣơng Kết cho hình phía dƣới: Hình 4.6 Kết chỉnh sửa thơng tin mơn học Xóa: xóa thông tin không cần thiết, thông tin lấy từ file xml sau xóa đƣợc lƣu lại vào file xml Tìm kiếm: tìm kiếm thơng tin liên quan theo mã môn học file xml (TT_Monhoc.xml) Nếu thành công cho kết hình Ngồi ra, hệ thống cịn có số chức khác nhƣ: download thời khóa biểu, download quy chế đào tạo tín chỉ, … Có file xml tên SinhVien.xml sau: 1 Ten test 2 HY 9573490574 true Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 65 4 Nguyễn Thị Hồng Cẩm hongcam 1 Hà Nội 0924783743 true 3 Trần Thị Hoa hoa 2 Hà Nội 0435668339 true 4 Nguyen Xuan Hai hong 1 Hà Nội 0599898982 true 5 Nguyễn Linh Đa linhda 1 Hà Nội 09237428 true Hiển thị file SinhVien.xml dạng bảng: Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 66 Hình 4.7 Hiển thị file XML dạng bảng Hiển thị file SinhVien.xml dạng hình cây: Hình 4.8 Hiển thị file XML dạng hình Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 67 KẾT LUẬN Việc chuyển đổi CSDL quan hệ sang tài liệu XML ngƣợc lại mà không cần quan tâm đến việc bảo toàn ràng buộc liệu, hay việc chuyển đổi có bảo tồn ràng buộc việc xét ràng buộc liệu thông qua ràng buộc khóa đƣợc nghiên cứu Tuy nhiên, với phƣơng pháp thứ rõ ràng tính ứng dụng thực tiễn khơng cao, CSDL tồn giới thực ln ln có ràng buộc lẫn Với phƣơng pháp thứ hai thực khó khăn, phức tạp để xét đƣợc hầu hết tất ràng buộc nhƣ phụ thuộc liệu CSDL quan hệ Các kết đạt đƣợc luận văn: Trình bày tổng quan cấu trúc tài liệu XML, định nghĩa kiểu tài liệu DTD, lƣợ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 khái niệm CSDL quan hệ Giới thiệu phƣơng pháp luận chuyển tài liệu XML sang CSDL quan hệ ngƣợc lại Đƣa thuật tốn tích hợp hệ thống sở liệu quan hệ XML Cài đặt thuật tốn ngơn ngữ lập trình C# môi trƣờng ASP.NET, sở xây dựng ứng dụng trang web “Đăng ký học tín chỉ” trƣờng Đại học Hàng Hải Việt Nam có tính thiết thực cao Một số hạn chế luận văn: Hệ thống tích hợp sở liệu SQL Server XML Cơ sở liệu sử dụng chƣơng trình chƣa đầy đủ Hƣớng nghiên cứu tiếp theo: Luận văn đƣợc phát triển để hỗ trợ cho việc phục hồi CSDL quan hệ gốc từ tài liệu XML đƣợc chuyển đổi q trình trao đổi liệu tích hợp đƣợc CSDL quan hệ vào tài Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 68 liệu XML theo nhu cầu sử dụng liệu ngƣời dùng mà đảm bảo đầy đủ phụ thuộc liệu thông qua việc kết hợp sử dụng truy vấn từ SQL Server q trình tích hợp Hồn thiện hệ thống “Đăng ký học tín ” trƣờng Đại học Hàng Hải Việt Nam” nhằm đáp ứng cao yêu cầu sử dụng riêng trƣờng Do thời gian khả có hạn, luận văn cịn nhiều thiếu sót, em mong nhận đƣợc góp ý, dẫn thêm Thầy Cô, bạn bè để em xây dựng đƣợc ứng dụng hồn thiện Một lần em xin chân thành cảm ơn Thầy hƣớng dẫn PGS.TS Đoàn Văn Ban, Thầy Cô khoa tạo điều kiện thuận lợi để luận văn hồn thành thời hạn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 69 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Nguyễn Kim Anh (2004), Nguyên lý hệ sở liệu, NXB Thống kê [2] Nguyễn Phƣơng Lan, Hoàng Đức Hải (2006), XML – Nền tảng ứng dụng, NXB Lao động – Xã hội [3] Phƣơng Lan, Hồng Đức Hải (2002), Lập trình Windows với C# Net, NXB Lao động – Xã hội [4] Phƣơng Lan, Hồng Đức Hải (2005), Giáo trình nhập mơn XML, NXB Lao động – Xã hội [5] Phạm Hữu Khang (2005), Lập trình ASP.Net 2.0, NXB Lao động – Xã hội [6] Nguyễn Tiến, Đặng Xuân Hƣờng, Nguyễn Văn Hoài, Nguyễn Tuấn Ngọc (2001), Nhập môn XML thực hành ứng dụng, NXB Thống kê [7] PGS.TS Lê Tiến Vƣơng (2005), Nhập môn sở liệu quan hệ, NXB Thống kê Tiếng Anh [8] Benoit Marchal (2000), XML by Example, Printed in the United States of America [9] Dino Esposito (2003), Applied XML Programming of microsoft.NET, Printed and bound in the United States of America [10] www.xml.com [11] http://www.w3schools.com/ Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ... chuyên sở liệu quan hệ sang tài liệu XML ngƣợc lại chuyển tài liệu XML sang dạng sở liệu quan hệ nội dung việc tích hợp hệ thống sở liệu XML [6] 2.1 Phƣơng pháp luận Tích hợp sở liệu quan hệ XML. .. createTextNode() Khởi tạo liệu text cho nút Bảng 1.3 Các phƣơng thức mơ hình DOM 1.2 Cơ sở liệu quan hệ 1.2.1 Cấu trúc sở liệu quan hệ Một sở liệu quan hệ tập nhiều quan hệ, quan hệ bảng hai chiều bao... liệu DOM, phân tích tài liệu XML theo mơ hình DOM khái niệm sở sở liệu (CSDL) quan hệ Chƣơng 2: ? ?Tích hợp hệ thống sở liệu XML? ?? – Giới thiệu phƣơng pháp luận chuyển tài liệu XML sang CSDL quan