tích hợp cơ sở dữ liệu quan hệ và xml

74 306 0
tích hợp cơ sở dữ liệu quan hệ và xml

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Vũ 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 LỜI CẢM ƠN Trướ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. Số 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 Số hóa bởi 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 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 Số 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 CSDL Cơ sở dữ 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 bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 1 MỞ ĐẦ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  Tìm hiểu về công nghệ XML.  Tìm hiểu về cơ sở dữ liệu quan hệ.  Cách chuyển đổi một tài liệu XML sang một cơ sở dữ liệu. Số 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  Cách chuyển một cơ sở dữ liệu quan hệ sang một tài liệu XML. 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 về XML.  Nghiên cứu giải pháp thực hiện chuyển đổi giữa XML và cơ sở dữ liệu quan hệ.  Xây dựng đƣợc một ứng dụng cụ thể dựa trên các kết quả nghiên cứu ở trên.  Đồng thời luận văn cũng mong muốn nêu ra đƣợc một số hƣớng 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.  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 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, Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 3 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 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. Số 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. Một tài liệu XML well–formed chƣa chắc là một tài liệu hợp lệ. Một tài 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 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 5 hợ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 [...]... quan hệ sang một tài liệu XML hoặc ngƣợc lại chuyển một tài liệu XML sang dạng một cơ sở dữ liệu quan hệ là nội dung của việc tích hợp giữa các hệ thống cơ sở dữ liệu và XML [6] 2.1 Phƣơng pháp luận Tích hợp cơ sở dữ liệu quan hệ và XML nghiên cứu về cách chuyển đổi một cơ sở dữ liệu quan hệ thành một tài liệu XML và ngƣợc lại, chuyển một tài liệu XML về một cơ sở dữ liệu quan hệ Để giải quyết vấn đề... liệu quan hệ Một cơ sở dữ liệu quan hệ là một tập của một hoặc nhiều quan hệ, trong đó mỗi quan hệ là một bảng hai chiều bao gồm các cột và các hàng (gọi là bảng dữ liệu hay quan hệ) Bảng dữ liệu chính là hình thức thể hiện cụ thể của kiểu thực thể khi chúng ta xây dựng cơ sở dữ liệu, bảng dữ liệu đƣợc sử dụng để lƣu dữ liệu về các thực thể trong lớp thực thể đó Nhƣ vậy bảng dữ liệu là một tập các bộ dữ. .. file XML làm cầu nối để lƣu trữ và trao đổi dữ liệu Do đó, chuyển đổi dữ liệu từ một cơ sở dữ liệu bất kỳ sang định dạng file XML và ngƣợc lại là một việc làm cần thiết và mang giá trị thực tiễn cao Với cấu trúc của một tài liệu XML, các cơ sở dữ liệu đƣợc tổ chức dƣới dạng mô hình đối tƣợng DOM Việc xử lý các dữ liệu này thông qua mô hình DOM nhƣ có thể chuyên một cơ sở dữ liệu quan hệ sang một tài liệu. .. Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 29 2.1.1 Đối sánh nội dung của một CSDL quan hệ và một tài liệu XML Mối quan hệ giữa nội dung một cơ sở dữ liệu quan hệ và một tài liệu XML đƣợc thể hiện qua các mức so sánh về: mô hình dữ liệu, lƣợc đồ và các mức đƣợc minh họa nhƣ sau: Nội dung quan hệ Nội dung XML Mức mô hình dữ liệu Relation  Attribute Element Type  Attribute Lƣợc đồ quan hệ. .. đồ Lƣợc đồ DTD /XML Element Type b Attribute y …………… ………… Cơ sở dữ liệu quan hệ Tài liệu XML Mức minh họa Tupe  Value Element Type -> Attribute Element Value Attribute Value Hình 2.1 Các mức so sánh giữa mô hình quan hệ và XML Tại mức mô hình dữ liệu, nội dung dữ liệu và nội dung quan hệ có sự khác nhau đáng kể do những mục đích khác nhau của CSDL quan hệ và XML Mục đích của CSDL quan hệ là để đáp... miền Nhƣ vậy, mỗi quan hệ có thể gọi là vô hạn Với giả thiết rằng quan hệ là một tập hữu hạn Ngƣời ta dùng thuật ngữ quan hệ cơ sở để chỉ mức độ Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 23 thấp nhất của thể hiện dữ liệu với ngƣời dùng Tất cả dữ liệu trong CSDL quan hệ sẽ đƣợc lƣu trữ theo tập các quan hệ cơ sở Dữ liệu có thể đƣợc truy cập và xử lý theo cách... là một tài liệu XML hợp lệ, hợp khuôn dạng, mô hình DOM và cách phân tích tài liệu XML theo mô hình DOM cùng các trình phân ngữ trong XML nhƣ: kiểu tài liệu DTD, lƣợc đồ XML, không gian tên, bảng định kiểu CSS Ngoài những kiến thức cơ bản về XML, trong chƣơng 1 cũng trình bày những kiến thức cơ bản về cơ sở dữ liệu quan hệ, các khái niệm, cấu trúc, các ràng buộc toàn vẹn trên CSDL quan hệ Số hóa bởi... hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 24 xem nhƣ các bảng cơ sở trong CSDL quan hệ và dùng chúng trong các phép xử lý 1.2.2 Ràng buộc toàn vẹn trên một cơ sở dữ liệu quan hệ Ràng buộc toàn vẹn và kiểm tra sự vi phạm ràng buộc toàn vẹn là một trong những vấn đề quan trọng trong quá trình phân tích, thiết kế và khai thác các hệ thống cơ sở dữ liệu [1] 1.2.2.1 Định... dữ liệu hay bản ghi dữ liệu, mỗi bộ có một số lƣợng thuộc tính nhƣ nhau nhƣng có thể khác nhau về giá trị Bảng dữ liệu trong cách tiếp cận CSDL quan hệ đƣợc hiểu chính xác hơn bằng cụm từ quan hệ Một quan hệ bao gồm lƣợc đồ quan hệ và một thể hiện quan hệ Trong đó thể hiện quan hệ chính là một bảng còn một lƣợc đồ Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 22 quan. .. toàn vẹn trên CSDL quan hệ Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 28 CHƢƠNG 2: TÍCH HỢP CÁC HỆ THỐNG CƠ SỞ DỮ LIỆU QUAN HỆ VÀ XML Các cơ sở dữ liệu ngày nay đƣợc lƣu trữ ở rất nhiều định dạng file khác nhau Chuyển đổi dữ liệu giữa chúng là một vấn đề nan giải mặc dù đã có không ít những trình ứng dụng hỗ trợ Nếu dữ liệu của file chỉ đƣợc lƣu theo dạng text thì mọi . 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à. 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. 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

Ngày đăng: 04/10/2014, 00:39

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan