Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 64 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
64
Dung lượng
6,73 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Đặng Hữu Dũng PHƯƠNGPHÁPTHỰCTIỄNTHIẾTKẾCƠSỞDỮLIỆUQUANHỆ KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Các hệ thống thông tin HÀ NỘI - 2009 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Đặng Hữu Dũng PHƯƠNGPHÁPTHỰCTIỄNTHIẾTKẾCƠSỞDỮLIỆUQUANHỆ KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Các hệ thống thông tin Cán bộ hướng dẫn: TS. Nguyễn Tuệ HÀ NỘI - 2009 MỞ ĐẦU Ngày nay cơsởdữliệu đã đƣợc ứng dụng rộng rãi trong công việc quản lý, giúp cho các cơ quan, tổ chức nâng cao hiệu quả hoạt động của hệ thống. Để có một cơsởdữliệu tốt, cần có phƣơng pháp xây dựng tốt. Có hai phƣơng pháp chính để xây dựng một cơsởdữliệuquan hệ: phƣơng pháp lý thuyết và phƣơng phápthực tiễn. Phƣơng pháp lý thuyết dựa trên lý thuyết phụ thuộc hàm và đại sốquan hệ, xuất phát từ một quanhệ phổ quát và một tập phụ thuộc hàm cho trƣớc, dựa trên các phụ thuộc hàm để xác định khoá và dạng chuẩn của quan hệ, từ đó áp dụng các phƣơng pháp tách để tách quanhệ ban đầu thành một tập quanhệ ở dạng chuẩn BCNF. Phƣơng phápthựctiễn xuất phát bằng việc nghiên cứu thựctiễn và xây dựng mô hình mức quan niệm (mô hình E – R). Từ mô hình E-R, áp dụng thuật toán chuyển đổi, mô hình đƣợc chuyển đổi thành lƣợc đồ CSDL quan hệ. Trong khoá luận này chúng tôi chọn nghiên cứu và phát triển cơsởdữliệu theo phƣơng phápthực tiễn. Khoá luận bao gồm 2 chƣơng: Chƣơng 1: Tìm hiểu phƣơng phápthựctiễn xây dựng cơsởdữliệuquan hệ. Trong chƣơng này chúng tôi trình bày tổng quan về cơsởdữliệuquan hệ, các bƣớc xây dựng cơsởdữliệu theo phƣơng phápthực tiễn. Chƣơng 2: Áp dụng để xây dựng một cơsởdữliệu cụ thể. Trong chƣơng này chúng tôi trình bày các bƣớc xây dựng hệ thống giới thiệu việc làm. Mô hình E-R, cơsởdữliệu và các cài đặt hệ thống sẽ lần lƣợt đƣợc trình bày trong chƣơng này. 2 1. Chƣơng 1. PHƢƠNG PHÁPTHỰCTIỄN THIẾT KẾCƠSỞDỮLIỆUQUANHỆ 1.1. TỔNG QUAN VỀ CƠSỞDỮLIỆUQUANHỆ 1.1.1. Các khái niệm 1.1.1.1. Miền : Gioitinh{`nam`,`nu`}. - 32767} 1.1.1.2. Thuộc tính . là DOM(A). 1.1.1.3. Tích Decac của các miền Giả sử có các miền giá trị DOM(A 1 ), DOM(A 2 ),…, DOM(A n ). Tích Decac: DOM(A 1 ) x DOM(A 2 ) x … x DOM(A n ) = { <v i1 . v i2 …v in > }, trong đó i = 1, 2, …, v ij DOM(A j ) 1.1.1.4. Quanhệ Cho n thuộc tính A 1 , A 2 , … A n với DOM(A 1 ), DOM(A 2 ),…, DOM(A n ) tƣơng ứng. - R(A 1 , A 2 , … A n ) gọi là lƣợc đồ quanhệ trên A 1 , A 2 , … A n . - Quanhệ R tƣơng ứng với lƣợc đồ trên là: R DOM(A 1 ) x DOM(A 2 ) x … x DOM(A n ). - Ngƣời ta thƣờng biểu diễn quanhệ dƣới dạng một bảng: A 1 A 2 … A n v i1 v i2 v ij v in 3 1.1.2. Các ràng buộc trên các quanhệ Các dữliệu trong cơsởdữliệuquanhệ phải thoả mãn các ràng buộc: a) Ràng buộc giá trị: v ij DOM(A j ). b) Ràng buộc khoá: giá trị khoá phải duy nhất. c) Ràng buộc toàn vẹn thực thể: nếu PK là là khoá chính của quanhệ thì PK luôn có giá trị xác định. d) Ràng buộc toàn vẹn tham chiếu: nếu FK là là khoá ngoài của R tham chiếu đến PK của S thì: - FK và PK phải có cùng kiểu; - Nếu FK có giá trị thì giá trị đó phải thuộc về tập giá trị của PK. Ngoài ra, các dữliệu còn phải thoả mãn các ràng buộc về quản lý, về pháp lý cho phù hợp với thực tiễn. 1.1.3. Các phép toán trên quanhệ (Int . 1.2. Phƣơng phápthựctiễn xây dựng cơsởdữliệuThực Mô hình quan Mô hình lôgic Mô hình 4 Phƣơng phápthựctiễn xây dựng cơsởdữliệu bao gồm các bƣớc: - Xây dựng mô hình quan niệm (mô hình E-R). - Xây dựng mô hình lôgic. - Xây dựng mô hình vật lý. 1.2.1. Các khái niệm về mô quan niệm E-R . . - (E-R . 1.2.1.1. Thực thể và kiểu thực thể Thực thể đƣợc định nghĩa là một đối tƣợng cóthực hay trừu tƣợng mà ta muốn lƣu trữ thông tin về nó. Kiểu thực thể: Là tập các thực thể có cùng đặc trƣng nhƣ nhau. 1.2.1.2. Thuộc tính của thực thể Thuộc tính là các đặc trƣng của các kiểu thực thể. Trong mô hình E-R, các thuộc tính bao gồm - Thuộc tính đơn, đa trị. - Thuộc tính phức hợp, thuộc tính đa trị. - Thuộc tính suy diễn đƣợc. Biểu diễn kiểu thực thể Kiểu thực thể: đƣợc biểu diễn bằng hình chữ nhật Thuộc tính đơn trị: đƣợc biểu diễn bằng hình oval Thuộc tính phức hợp: đƣợc biểu diễn nhƣ hình bên 5 Thuộc tính đa trị: Ví dụ: 1.2.1.3. Liên kết và kiểu liê kết Liên kết thực thể chỉ mối quanhệ ràng buộc giữa các thực thể. Kiểu liên kết: Tập các liên kết có cùng đặc trƣng. Các kiểu liên kết có cùng các thuộc tính. Các liên kết có ràng buộc: - Tỷ lệ lực lƣợng: có 3 loại : 1-1, 1-N, M-N - Mức tham gia: liên kết bắt buộc hoặc tuỳ chọn. Liên kết 1 - 1: là liên kết thoả mãn điều kiện nếu xuất hiện một thực thể A thì xuất hiện một thực thể B hoặc ngƣợc lại. Biểu diễn nhƣ sau: Liên kết 1 - nhiều: là liên kết thoả mãn điều kiện nếu xuất hiện một thực thể A thì xuất hiện nhiều thực thể B hoặc ngƣợc lại, nếu xuất hiện một thực thể B thì xuất hiện nhiều thực thể A. Biểu diễn nhƣ sau: Ví dụ: Xét quanhệ giữa nhân viên và phòng trong một công ty. Đây là quanhệ một nhiều (một nhân viên thuộc chỉ một phòng còn một phòng có thể có nhiều nhân viên). SINH VIÊN Maso HoVaTen NgaySinh GioiTinh NN Ten Ho 1 N 6 Liên kết nhiều -nhiều: là liên kết thoả mãn điều kiện xuất hiện nhiều thực thể A thì xuất hiện nhiều thực thể B hoặc ngƣợc lại. Biểu diễn nhƣ sau: Ví dụ: Quanhệ giữa thực thể sách và thực thể độc giả là quanhệ nhiều - nhiều (giả thiết một độc giả có thể mƣợn nhiều loại sách cùng một lúc và một loại sách có nhiều bản sao có thể cho mƣợn). Liên kết nhiều thực thể Là mối liên kết trong đó có nhiều hơn hai thực thể. Để biểu diễn liên kết nhiều thực thể và đơn giản hoá khi biểu diễn ta quy các liên kết nhiều thực thể này về các liên kết hai thực thể bằng cách đƣa thêm vào thực thể trung gian (kí hiệu là: TG). Khi thêm thực thể trung gian (TG), liên kết nhiều - nhiều - nhiều sẽ chuyển thành 3 liên kết 1 - nhiều (đây là liên kết hai thực thể). Biểu diễn nhƣ sau: Theo định nghĩa liên kết thực thể ta có thể coi liên kết thực thể là một dạng thực thể đặc biệt và cũng đƣợc lƣu trữ. Do đó CSDL phải lƣu trữ cả hai đối tƣợng: thực thể và liên kết thực thể, đồng thời CSDL phải có khả năng biểu diễn hai đối tƣợng này. 1.2.1.4. Lƣợc đồ E-R Là 1 tập các kiểu thực 1.2.1.5. Thuật toán chuyển đổi E-R thành lƣợc đồ cơsởdữliệuquanhệ : : – – . 7 . ) . . . . 1.2.2. 1.2.2.1. Chọn hệquản trị cơsởdữliệu a) à ? Phần chƣơng trình để có thể xử lý, thay đổi cơsởdữliệu gọi là Hệquản trị cơsởdữliệu (viết tắt HQTCSDL, tiếng Anh là Database management system). Theo định nghĩa này HQTCSDL có nhiệm vụ rất quan trọng nhƣ là một bộ diễn dịch (interpreter) với ngôn ngữ bậc cao nhằm giúp ngƣời sử dụng có thể 8 dùng đƣợc hệ thống mà ít nhiều không cần quan tâm đến thuật toán chi tiết hoặc biểu diễn dữliệu trong máy. Theo một cách hiểu khác: HQTCSDL là một phần mềm cho phép tạo lập CSDL và điều khiển hoặc truy nhập CSDL đó, đặc biệt HQTCSDL đảm bảo tính độc lập dữliệu (là sự bất biến của các chƣơng trình ứng dụng đối với các thay đổi về cấu trúc lƣu trữ và chiến lƣợc truy nhập). Ví dụ: Một sốHệ QTCSDL thông dụng hiện nay: MS Access, SQL Server (của hãng Microsoft), Oracle (của hãng Oracle), DB2, FoxPro,v.v b) Để đảm bảo tính tiêu chuẩn hoá: các hệ CSDL khác nhau, dữliệu của các chƣơng trình ứng khác nhau dựa trên một tiêu chuẩn chung. Cung cấp các công cụ định nghĩa và thao tác dữliệu linh hoạt Tích hợp với nhiều trình ứng dụng khác nhau: các ngôn ngữ lập trình, các ứng dụng hỗ trợ phân tích thiết kế, v.v c) -Server (Relational Database – . - (IIS), E-Commerce Server, Proxy Server d) Hệquản trị cơsởdữliệu hỗ trợ các tính năng sau: Định nghĩa dữliệu (Database definition) Xây dựng dữliệu (Database construction) : Chức năng định nghĩa và xây dựng dữliệu hỗ trợ ngƣời dùng xây dựng các bộ dữliệu riêng. Thao tác dữliệu (Database manipulation): các thao tác cập nhật, tìm kiếm, sửa, xoá, Quản trị dữliệu (Database administrator): phân quyền sử dụng, bảo mật thông tin, [...]... so_fax trang_thai ngay_het_han Hình 15: Mô hình quanhệ 32 2.4 THIẾTKẾ MÔ HÌNH LOGIC 2.4.1 Chọn cơ sởdữliệuHệ quản trị cơ sởdữliệu đƣợc chọn để thực thi khóa luận tốt nghiệp là Microsoft SQL Server 2005 vì những lý do sau: Đơn giản dễ sử dụng Có đầy đủ các chức năng từ đơn giản đến phức tạp của một hệquản trị cơ sởdữliệu Tích hợp tốt với những công nghệ mới Đặt biệt là lập trình NET 2.4.2 Khi dựa... DỤNG (Mã nhà tuyển dụng, Mã công việc, Số hiệu, Kết quả) c Chuẩn hóa các mối quanhệ Nhận thấy trong các quanhệ NGƢỜI TÌM VIỆC, thuộc tính Ngoại ngữ là thuộc tính đa trị, ta tách đa trị cùng với khóa của quanhệ NGƢỜI TÌM VIỆC ra thành một quanhệ mới là quanhệ TÌM VIỆC-NGOẠI NGỮ, cóquanhệ 1-N với quanhệ YÊU CẦU VL, khi chuẩn hóa ta thu đƣợc quanhệ này với các thuộc tính sau: 31 TÌM VIỆC – NGOẠI... định luồng dữliệu của hệ thống Từ đó vẽ đƣợc biểu đồ ngữ cảnh của hệ thống nhƣ sau: Báo cáo kết quả TD Báo cáo kết quả TD Báo cáo kết quả TD Báo cáo kết quả TD Báo cáo kết quả hoạt Báo cáo kết quả Báo cáo kết quả TD hoạt Báo cáo kết quả TD động sàn GD Báo cáo kết quả quả TD Báo cáo kết hoạt động sàn GD động sàn GD Báo cáo tình hình Báo cáo tình hìnhviệc làm BáoĐK> quả TD cáo kết Báo cáo kết quả hoạt... Báo cáo kết quả TD Báo cáo kết quả TD động sàn GD Báo cáo kết quả TD Báo cáo kết quả TD Báo cáo tình hình Báo cáo kết quả TD Báo cáoĐK> việc làm Báo cáo kết quả TD kết quả TD Báo cáo kết quả TD Báo cáo kết quả TD Báo cáo kết quả hoạt Báo cáo kết quả hoạt Báo cáo kết quả hoạtBáo cáo kết quả hoạt Báo cáo kết quả hoạt động sàn GD động sàn GD động sàn GD động sàn GD động sàn GD Bộ Báo Báo cáo kết hình...Bảo vệ dữliệu (Database protection): thực hiện các thao tác sao chép, phục hồi, tránh mất mát dữliệu e) Ngôn ngữ của hệquản trị cơ sởdữliệu bao gồm: Ngôn ngữ con định nghĩa dữliệu (Database Definition Language - DDL): cung cấp các câu lệnh cho phép mô tả, định nghĩa các đối tƣợng của CSDL Ngôn ngữ con thao tác dữliệu (Database Manipulation Language - DML):... Mức lương, Nơi làm việc Yêu cầu thế nào ? Nhƣ vậy mối quanhệ “ Yêu cầu” liên kết hai thực thể NHÀ TUYỂN DỤNG và CÔNG VIỆC và có 3 thuộc tính là số lượng, mức lương, nơi làm việc Bằng cách tƣơng tự và xét các quanhệsở hữu hay phụ thuộc giữa các cặp thực thể, ta xác định đƣợc mối quanhệ còn lại và các thuộc tính của chúng nhƣ dƣới đây: Mối quanhệThực thể tham gia Thuộc tính LÀM VIỆC NGÀNH NGHỀ, NGƢỜI... 1.2.3.6 cơcơsở vật ) : lôgic 16 , : 2 :Chiên l 1.2.3.7 a của làm : Giai 1.2.3.8 là 17 1.2.3.9 1.2.3.10 1.2.3.11 1.2.3.12 trong p 1.2.3.13 dung bên -Shneiderman : 18 ụ CASE 1.2.3.14 a : b 1.2.3.15 hệ - 19 , , 1.2.3.16 Tổ c liệu ế : 1.2.3.17 Sơ đồ thiếtkếkế : hiện liệu T 20 2 Chương 2 2.1 ĐẶT BÀI TOÁN Hệ thống giới thiệu việc làm đƣợc xây dựng nhằm mục đính kết nối... hẹn PV lần 2, Số người DỊCH được tuyển dụng NHÀ TUYỂN DỤNG, CÔNG VIỆC, Kết quả, ngày NGƢỜI TÌM VIỆC NHÀ TUYỂN DỤNG, CÔNG VIỆC 29 Số lượng, mức lương, nơi làm việc, ngày hết hạn, trạng thái 2.2.4 Phiếu đăng ký tìm việc Hình 14: Mô hình ERM 30 2.3 CHUYỂN ĐỔI MÔ HÌNH E-R THÀNH CƠSỞDỮLIỆUQUANHỆ a Biểu diễn thực thể thành quanhệ NGÀNH NGHỀ NGÀNH NGHỀ (Mã ngành nghề, Tên ngành nghề) NGƢỜI TÌM VIỆC... việc làm Báo cáo kết quả hoạt Báo cáo kết quả TD Báo cáo kết quả hoạt Báo cáo kết quả hoạt Báo cáo tình hình động sàn GD động sàn GD Bộ động sàn GD Báo cáo kết quả TD Bộ ĐK> việc làm Báo cáo kết quả TD Báo cáo kết quả lao Báo cáo tình hình Bộ Báo cáo hoạt hình tình Báo cáo tình hình lao ĐK> động sàn GD việc làm ĐK> việc làm lao Báo cáo kết quả TD động Báo ĐK> việc làm hoạt cáo kết quả động cáo... tìm kiếm,v.v Ngôn ngữ con kiểm soát dữliệu (Database Control Language - DCL): điều khiển tính đồng thời (tƣơng tranh) đối với dữliệu 1.2.2.2 -Server Tạo bảng Mệnh đề tạo bảng tạo một bảng quanhệ mới thông quan tên bảng, xác định các thuộc tính và các ràng buộc logic của bảng Mệnh đề tạo bảng có dạng tổng quát nhƣ sau: CREATE TABLE ( [NOT NULL], ) Trong đó: Tên bảng: . thực tiễn xây dựng cơ sở dữ liệu quan hệ. Trong chƣơng này chúng tôi trình bày tổng quan về cơ sở dữ liệu quan hệ, các bƣớc xây dựng cơ sở dữ liệu theo phƣơng pháp thực tiễn. Chƣơng 2: Áp. bày trong chƣơng này. 2 1. Chƣơng 1. PHƢƠNG PHÁP THỰC TIỄN THIẾT KẾ CƠ SỞ DỮ LIỆU QUAN HỆ 1.1. TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU QUAN HỆ 1.1.1. Các khái niệm 1.1.1.1. Miền : Gioitinh{`nam`,`nu`} TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Đặng Hữu Dũng PHƯƠNG PHÁP THỰC TIỄN THIẾT KẾ CƠ SỞ DỮ LIỆU QUAN HỆ KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Các hệ thống thông tin