Giáo trình về dữ liệu và các mô hình cơ sở dữ liệu

Chia sẻ: Nguyễn Thị Hồng Hồng | Ngày: | Loại File: DOC | Số trang:62

0
180
lượt xem
80
download

Giáo trình về dữ liệu và các mô hình cơ sở dữ liệu

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Chúng ta đang sống trong kỷ nguyên thông tin. Xu hướng xã hội hoá tin học tiếp đến là toàn cầu hoá là xu hướng tất yếu không thể đảo ngược. Trong bối cảnh đó việc nắm bắt được các thông tin nhanh chóng và chuẩn xác là yếu tố tối cần thiết quyết định sự thắng lợi trong quản lý điều hành. Việc tin học hoá xã hội đã dẫn tới nhu cầu quản lý điều hành công việc trên máy tính điện tử, như vậy thực chất của công tác quản lý chính là quản lý thông tin....

Chủ đề:
Lưu

Nội dung Text: Giáo trình về dữ liệu và các mô hình cơ sở dữ liệu

  1. ------------------------------------------------------------------------------------ Giáo Trình Dữ liệu và các mô hình cơ sở dữ liệu 1
  2. ------------------------------------------------------------------------------------ MỤC LỤC HỌC TRốNH I CÁC KHÁI NIỆM CƠ BẢN VỀ DỮ LIỆU VÀ CÁC Mễ HốNH CƠ SỞ DỮ LIỆU ........... 4 1.1 CÁC KHÁI NIỆM CƠ BẢN VỀ DỮ LIỆU VÀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ...................................... 5 1.1.1 Dữ liệu .....................................................................................................................................6 1.1.2 File dữ liệu ...............................................................................................................................6 1.1.3 Cơ sở dữ liệu ............................................................................................................................6 1.1.4 Định nghĩa hệ cơ sở dữ liệu .....................................................................................................7 1.1.5 Sơ đồ vật lý hệ cơ sở dữ liệu ....................................................................................................8 1.1.6 Hệ thống cơ sở dữ liệu mức logic ............................................................................................8 1.1.7 Một số tớnh chất đặc trưng của cơ sở dữ liệu .........................................................................8 1.2 CÁC Mễ HốNH CƠ SỞ DỮ LIỆU ................................................................................................................. 8 1.2.1 Cỏc khỏi niệm cơ bản để xõy dựng một hệ thống thụng tin. ....................................................8 1.2.2 Cỏc mụ hỡnh dữ liệu ................................................................................................................9 1.3 KHÁI NIỆM TOÁN HỌC HOÁ Mễ HốNH QUAN HỆ .............................................................................. 11 1.3.1 Thuộc tớnh (Attribute) ...........................................................................................................11 1.3.2 Quan hệ (Relation) .................................................................................................................12 1.3.3 Khỏi niệm phụ thuộc hàm (Function dependency) ................................................................13 1.3.4 Khoỏ (Key) .............................................................................................................................13 1.3.5 Lược đồ quan hệ (Relation Schema) ......................................................................................15 1.3.6 Phộp tỏch lược đồ quan hệ ....................................................................................................15 1.3.7 Bao đúng của tập phụ thuộc hàm ..........................................................................................17 1.3.8 Hệ tiờn đề cho phụ thuộc hàm ...............................................................................................17 1.3.9 Cỏc dạng phụ thuộc hàm .......................................................................................................18 1.4 CÁC PHẫP TOÁN CỦA NGễN NGỮ THAO TÁC DỮ LIỆU..................................................................... 19 1.4.1 Phộp chốn (Insert) .................................................................................................................19 1.4.2 Phộp loại bỏ (Del) .................................................................................................................19 1.4.3 Phộp thay đổi .........................................................................................................................20 1.5 CÁCH THỨC TỔ CHỨC DỮ LIỆU VẬT Lớ ............................................................................................. 20 1.5.1 Giới thiệu cỏch thức tổ chức dữ liệu ......................................................................................20 1.5.2 Mụ hỡnh tổ chức bộ nhớ ngoài ..............................................................................................20 1.6 TỔ CHỨC CÁC TỆP CƠ SỞ DỮ LIỆU ...................................................................................................... 21 1.6.1 Tệp băm..................................................................................................................................21 1.6.2 Tệp chỉ số ...............................................................................................................................22 1.6.3 B - Cõy (Balanced tree) .........................................................................................................24 HỌC TRốNH II CÁC NGễN NGỮ ĐỊNH NGHĨA VÀ THAO TÁC DỮ LIỆU ........................................... 27 2
  3. ------------------------------------------------------------------------------------ 2.1 ĐẠI SỐ QUAN HỆ...................................................................................................................................... 28 2.1.1 Giới thiệu về đại số quan hệ ..................................................................................................28 2.1.2 Phộp hợp (Union) ..................................................................................................................28 2.1.3 Phộp giao (Intersection) ........................................................................................................28 2.1.4 Phộp trừ (Deference) .............................................................................................................29 2.1.5 Tớch Đề cỏc mở rộng (Extended Cartesian Product)............................................................29 2.1.6 Phộp chiếu (Projection) .........................................................................................................30 2.1.7 Phộp chọn (Selection) ............................................................................................................30 2.1.8 Phộp kết nối (join) .................................................................................................................31 2.1.9 Phộp chia (Division) ..............................................................................................................32 2.1.10 Cỏc vớ dụ về tỡm kiếm bằng đại số quan hệ........................................................................33 2.2 NGễN NGỮ CON DỮ LIỆU DSL - ALPHA ............................................................................................... 33 2.2.1 Biểu thức ALPHA ...................................................................................................................34 2.2.2 Phộp tỡm kiếm .......................................................................................................................35 2.2.3 Cỏc phộp cập nhật dữ liệu .....................................................................................................38 2.2.4 Cỏc hàm thư viện ..................................................................................................................39 2.3 NGễN NGỮ CON DỮ LIỆU SQL ............................................................................................................... 40 2.3.1 Giới thiệu ngụn ngữ SQL .......................................................................................................40 2.3.2 Thao tỏc bảng ........................................................................................................................40 2.3.3 Khối SELECT .........................................................................................................................44 Một số trường hợp vận dụng lệnh SELECT ....................................................................................47 2.3.4 Cỏc mệnh đề cập nhật dữ liệu................................................................................................47 2.3.5 Cỏc mệnh đề về an toàn dữ liệu .............................................................................................48 HỌC TRốNH III CHUẨN HOÁ DỮ LIỆU VÀ ĐIỀU KHIỂN AN TOÀN DỮ LIỆU ................................. 50 3.1 CHUẨN HOÁ LƯỢC ĐỒ QUAN HỆ......................................................................................................... 51 3.1.1 Giới thiệu chuẩn hoỏ .............................................................................................................51 3.1.2 Cỏc dạng chuẩn hoỏ ..............................................................................................................51 3.2 PHÂN TÍCH CÁC CÂU HỎI ...................................................................................................................... 51 3.2.1 Phõn tớch sơ bộ về cỳ phỏp ...................................................................................................54 3.2.2 Phõn tớch ...............................................................................................................................54 3.2.2.1 Cỏc cụng cụ dựng trong phõn tớch cõu hỏi ..................................................................54 3.2.2.2 Tớnh đỳng đắn của cỏc cõu hỏi ....................................................................................54 3.2.2.3 Cỏc cõu hỏi tương đương do truyền ứng ......................................................................54 3.2.2.2 Cỏc cõu hỏi tương đương do tớnh toàn vẹn ..................................................................54 3.3 SẮP XẾP THỨ TỰ CÁC CÂU HỎI ........................................................................................................... 56 3.3.1 Cõy đại số quan hệ.................................................................................................................57 3
  4. ------------------------------------------------------------------------------------ 3.3.2 Luật biến đổi cõy đại số quan hệ ...........................................................................................57 3.3.3 Cỏc bước tối ưu cõy đại số quan hệ .......................................................................................58 3.3.4 Sắp thứ tự bằng cỏch phõn ró cỏc cõu hỏi con ......................................................................58 3.4 CÁC PHƯƠNG PHÁP ĐIỀU KHIỂN AN TOÀN DỮ LIỆU ...................................................................... 58 3.4.1 An toàn trong cơ sở dữ liệu....................................................................................................59 3.4.2 Cỏc điều khiển an toàn ..........................................................................................................59 4
  5. ------------------------------------------------------------------------------------ HỌC TRèNH I CÁC KHÁI NIỆM CƠ BẢN VỀ DỮ LIỆU VÀ CÁC Mễ HèNH CƠ SỞ DỮ LIỆU Nguyễn Đỡnh Hõn Phần này bao gồm cỏc nội dung sau đõy Cỏc khỏi niệm cơ bản về dữ liệu và hệ quản trị cơ sở dữ liệu Cỏc mụ hỡnh cơ sở dữ liệu Khỏi niệm toỏn học hoỏ mụ hỡnh quan hệ Cỏc phộp toỏn của ngụn ngữ thao tỏc dữ liệu Cỏch thức tổ chức dữ liệu vật lý Tổ chức cỏc tệp cơ sở dữ liệu 5
  6. ------------------------------------------------------------------------------------ 1.1 CÁC KHÁI NIỆM CƠ BẢN VỀ DỮ LIỆU VÀ HỆ QTCSDL 1.1.1 Dữ liệu Chỳng ta đang sống trong kỷ nguyờn thụng tin. Xu hướng xó hội hoỏ tin học tiếp đến là toàn cầu hoỏ là xu hướng tất yếu khụng thể đảo ngược. Trong bối cảnh đú việc nắm bắt được cỏc thụng tin nhanh chúng và chuẩn xỏc là yếu tố tối cần thiết quyết định sự thắng lợi trong quản lý điều hành. Việc tin học hoỏ xó hội đó dẫn tới nhu cầu quản lý điều hành cụng việc trờn mỏy tớnh điện tử, như vậy thực chất của cụng tỏc quản lý chớnh là quản lý thụng tin. Mọi thụng tin được quản lý trờn mỏy tớnh theo bất kỳ phương cỏch gỡ cũng đều phải được thể hiện bằng cỏc dữ liệu ghi trờn một thiết bị lưu trữ nào đú. Dữ liệu cũng rất phong phỳ cú thể là dữ liệu ở dạng văn bản, õm thanh hay hỡnh ảnh, … Trong thực tế người ta lưu dữ liệu dưới nhiều dạng khỏc nhau mục đớch chung là đạt hiệu quả cao trong lưu trữ và khai thỏc. Như vậy dữ liệu chớnh là thụng tin, chỉ xột ở gúc độ tin học theo nghĩa hẹp thỡ đú chớnh là phần nội dung của cỏc file. 1.1.2 File dữ liệu File là một khối thụng tin được lưu trữ trong mỏy tớnh, được đặc trưng bởi tờn gọi. File được xỏc định duy nhất bởi tờn (bao gồm cả đường dẫn) hoặc số hiệu file. Cú rất nhiều cỏc loại file khỏc nhau như file ảnh (.BMP, .GIF, .JPG, …), file hệ thống (.SYS), file thực hiện được (.COM, .EXE, …), file dữ liệu (.DBF, .MDB, .DAT, .DOC, …). Tuy nhiờn ở đõy chỳng ta chỉ xem xột cỏc file dữ liệu, những file này bao gồm nhiều bản ghi cú cựng cấu trỳc xỏc định (loại bản ghi), đồng thời mỗi bản ghi được phõn chia thành cỏc trường dữ liệu. Vớ dụ: File dữ liệu HOSO.MDB dựng để lưu trữ hồ sơ của tất cả cỏc cỏn bộ cụng nhõn viờn chức của Trường CĐSPKT I như sau: Tờn file: HOSO.MDB MaNV HoTen NgaySinh DiaChi ChucDanh HeSoL A01 Nguyễn Văn A 22/10/1984 Dõn tiến Nhõn viờn 1.92 A02 Trần Minh Anh 12/12/1983 Dạ trạch Nhõn viờn 1.78 B01 Nguyễn Văn B 12/06/1984 Dõn tiến Trưởng phũng 2.82 B02 Vũ Thị Bảy 02/12/1983 Tõn Dõn Nhõn viờn 1.92 C01 Nguyễn Văn C 27/11/1984 Phựng hưng Nhõn viờn 1.92 … … … … … … Hỡnh 1.1 File dữ liệu HOSO.MDB 1.1.3 Cơ sở dữ liệu a. Định nghĩa 6
  7. ------------------------------------------------------------------------------------ Khỏi niệm cơ sở dữ liệu được định nghĩa mụ tả như sau: Cơ sở dữ liệu là một tập hợp dữ liệu của một tổ chức được lưu trữ trờn mỏy tớnh (được nhiều người sử dụng) và việc thực hiện nú được chi phối bởi một mụ hỡnh dữ liệu. Núi theo nghĩa hẹp một cơ sở dữ liệu là một hệ thống cỏc file dữ liệu, mỗi file này cú cấu trỳc bản ghi khỏc nhau, nhưng về mặt nội dung cú quan hệ với nhau. Cần lưu ý là một cơ sở dữ liệu khỏc với một ngõn hàng dữ liệu. b. Cỏc tiờu chuẩn của một cơ sở dữ liệu Một cơ sở dữ liệu thụng thường thoả món 5 tiờu chuẩn sau đõy: • Biểu diễn tốt thế giới thực: một cơ sở dữ liệu phải cú khả năng cung cấp một hỡnh ảnh trung thực của thế giới thực cho phộp người sử dụng cú được cỏc thụng tin sử dụng tốt và cập nhật được. • Khụng dư thừa thụng tin: điều này cú nghĩa là khụng cú sự lặp lại thụng tin trong cơ sở dữ liệu, mỗi thụng tin chỉ cú mặt một lần trong cơ sở dữ liệu, nhờ đú cú sự lựa chọn duy nhất. • Tớnh độc lập của cỏc chương trỡnh đối với dữ liệu: điều này tương ứng với sự cần thiết làm giảm giỏ thành bảo trỡ cỏc chương trỡnh, những thay đổi về cấu trỳc của cơ sở dữ liệu là do sự thay đổi của thế giới thực chứ khụng phải do một ỏp dụng cụ thể nào cả và nú cho phộp nhiều ỏp dụng cựng chia sẻ cựng một bộ dữ liệu. • Tớnh an toàn và bảo mật của dữ liệu: cần cú sự bảo đảm an toàn cho cỏc trang thiết bị lưu trữ cơ sở dữ liệu chống lại mọi sự huỷ hoại, ngoài ra khi cú nhiều người sử dụng chỉ cú những người cú trỏch nhiệm mới cú thể truy cập đến toàn bộ hoặc một phần cơ sở dữ liệu. • Hiệu suất ứng dụng: mặc dự chia sẻ cựng một nguồn chung, cỏc ứng dụng phải cú hiệu suất trong cơ sở dữ liệu giống như trong sử dụng thụng tin truyền thống. Chỳ ý: Năm tiờu chuẩn nờu trờn là yờu cầu đối với một cơ sở dữ liệu được thiết kế hoàn thiện, trong thực tiễn khụng phải bao giờ cũng thực hiện được đầy đủ, tuỳ từng trường hợp cụ thể và do những yờu cầu khỏc nhau mà mỗi tiờu chuẩn trờn được tụn trọng hoặc bị vi phạm nhiều ớt khỏc nhau. 1.1.4 Định nghĩa hệ cơ sở dữ liệu Như ta đó biết cơ sở dữ liệu là một tập hợp dữ liệu cú liờn quan với nhau được lưu trữ trờn mỏy tớnh, phần chương trỡnh cho phộp khai thỏc cơ sở dữ liệu này gọi là hệ quản trị cơ sở dữ liệu, núi cỏch khỏc nú cho phộp mụ tả, lưu giữ, thao tỏc, xử lý cỏc tập hợp dữ liệu tạo nờn cơ sở dữ liệu, đồng thời nú bảo đảm sự an toàn và bớ mật của cỏc dữ liệu trong mụi trường cú nhiều người sử dụng. Chỳ ý: với mỗi hệ quản trị cơ sở dữ liệu cần thiết phải tồn tại một cơ sở dữ liệu nhưng điều ngược lại khụng đỳng. Cỏc hệ quản trị cơ sở dữ liệu cú nhiệm vụ hỗ trợ cho cỏc nhà phõn tớch thiết kế cơ sở dữ liệu cũng như cho cỏc người khai thỏc cơ sở dữ liệu. Thụng thường một hệ quản trị cơ sở dữ liệu phải đạt được 5 yờu cầu sau: • Một hệ quản trị cơ sở dữ liệu phải cú ngụn ngữ khai bỏo dữ liệu. Ngụn ngữ khai bỏo dữ liệu một phương tiện cho phộp khai bỏo cấu trỳc của dữ liệu, mụ tả cỏc mối liờn hệ của dữ 7
  8. ------------------------------------------------------------------------------------ liệu cũng như những qui tắc quản lý ỏp đặt lờn trờn dữ liệu đú. Ngụn ngữ khai bỏo dữ liệu được xõy dựng trờn một loại mụ hỡnh nào đú. Hiện nay phần lớn cỏc hệ QTCSDL được xõy dựng dựa trờn mụ hỡnh dữ liệu quan hệ • Một hệ quản trị cơ sở dữ liệu phải cú ngụn ngữ thao tỏc dữ liệu. Ngụn ngữ thao tỏc dữ liệu cho phộp người sử dụng cú thể cập nhật dữ liệu (thờm, sửa , xoỏ) khai thỏc dữ liệu cho nhiều mục đớch khỏc nhau • Một hệ quản trị cơ sở dữ liệu phải cú ngụn ngữ con truy vấn dữ liệu • Mỗi hệ quản trị cơ sở dữ liệu cũng cú thể được cài đặt một cơ chế riờng để giải quyết vấn đề tranh chấp dữ liệu • Một hệ quản trị cơ sở dữ liệu cũn cung cấp cho người sử dụng những cơ chế bảo mật và phục hồi dữ liệu khi cú sự cố xảy ra. 1.1.5 Sơ đồ vật lý hệ cơ sở dữ liệu Một cơ sở dữ liệu được phõn thành cỏc mức khỏc nhau, mức thấp nhất là cơ sở dữ liệu vật lý. Cơ sở dữ liệu vật lý là sự cài đặt cụ thể của cơ sở dữ liệu ở mức khỏi niệm, núi cỏch khỏc chớnh là cỏc tệp dữ liệu theo một cấu trỳc nào đú được lưu trờn cỏc thiết bị lưu trữ và được thực hiện trờn cỏc trang thiết bị tin học. 1.1.6 Hệ thống cơ sở dữ liệu mức logic Mức khỏi niệm là mức biểu thị ý niệm của cấu trỳc mà chỳng ta định mụ hỡnh hoỏ trong cơ sở dữ liệu. Mục tiờu của mức này là mụ tả nội dung thụng tin của cơ sở dữ liệu chứ khụng phải là mụ tả cỏc cấu trỳc lưu trữ do việc quản lý thụng tin yờu cầu. Cấu trỳc mong đợi ở mức này là trỡnh bày cỏch tổ chức, cho một hỡnh ảnh trung thành nhất cú thể được của cỏc hiện tượng đang tồn tại và phỏt triển ở tổ chức. Cần phải cố gắng mụ tả và thể hiện để nhận được một tập hợp chặt chẽ cỏc thụng tin sẽ được dựng cho mỗi nhu cầu đặc thự của những người sử dụng. Mức cài đặt logic là sự bổ sung của cấu trỳc nhận được ở mức trờn. Cấu trỳc ở mức này sẽ thực tế hơn, hiệu quả hơn để mụ tả cỏc đường vào cho phộp đi khắp khụng gian cơ sở dữ liệu. Cỏc yếu tố định lượng như khối lượng, cỏc chu kỳ, cỏc tần số tiếp cận thụng tin được tớnh đến ở mức này. 1.1.7 Một số tớnh chất đặc trưng của cơ sở dữ liệu Ta xem xột cỏc tiờu chuẩn của một cơ sở dữ liệu đó đưa ra ở trờn. Nguyễn Đỡnh Hõn 1.2 CÁC Mễ HèNH CƠ SỞ DỮ LIỆU 1.2.1 Cỏc khỏi niệm cơ bản để xõy dựng một hệ thống thụng tin. Hệ thống thụng tin là một tập hợp cỏc thụng tin được lưu giữ và tập hợp cỏc xử lý cho phộp xõy dựng lại một hỡnh ảnh trung thành nhất cú thể được của tổ chức. 8
  9. ------------------------------------------------------------------------------------ Như vậy, một cơ sở dữ liệu là một bộ phận của hệ thống thụng tin. Tập hợp cỏc xử lý được gọi là cỏc động thỏi của hệ thống thụng tin. a. Thực thể Thế giới nhận biết được chứa cỏc phần tử biểu diễn cỏc đối tượng mà người ta cú thể phõn biệt chỳng với nhau, cỏc đối tượng này là khụng phõn chia được. Định nghĩa 1. Thực thể là một hỡnh ảnh tượng trưng cho một đối tượng cụ thể hay một khỏi niệm trừu tượng nhưng cú mặt trong thế giới thực. b. Đặc trưng Định nghĩa 2. Đặc trưng của thực thể là những yếu tố giỳp ta nhận biết thực thể, một thực thể bao gồm nhiều đặc trưng để phõn biệt nú với cỏc thực thể khỏc. c. Mối quan hệ giữa cỏc kiểu thực thể Thế giới thực chịu những sự biến đổi được thể hiện bằng sự tạo ra, sự thay đổi, sự loại bỏ. Tất cả cỏc thể hiện đú được gọi là sự kiện. Cỏc thực thể cú sự liờn kết với nhau trong khi tham gia vào cỏc sự kiện của thế giới thực. 1.2.2 Cỏc mụ hỡnh dữ liệu - Thế hệ đầu tiờn Từ những năm 70 người ta đó thương mại hoỏ thế hệ đầu tiờn cỏc cơ sở dữ liệu. Thế hệ đầu tiờn này dựa trờn mụ hỡnh dữ liệu phõn cấp hoặc mụ hỡnh dữ liệu mạng. Mụ hỡnh dữ liệu phõn cấp đặc trưng bởi cấu trỳc dữ liệu được trỡnh bày dưới dạng phõn cấp cõy nhiều mức, mỗi một mức bao gồm một hoặc nhiều nhúm dữ liệu và chỳng lại cú thể phõn ra thành nhiều nhúm dữ liệu hoặc cỏc dữ liệu cơ bản (cỏc lỏ cõy). Mụ hỡnh dữ liệu mạng đặc trưng bởi cấu trỳc dữ liệu tương ứng với một tổ hợp của nhiều phõn cấp cõy khỏc nhau. Mỗi một đối tượng của thế giới thực được biểu diễn bởi một phõn cấp, cũn sự liờn kết giữa cỏc đối tượng được thể hiện bằng cỏc múc nối giữa cỏc phõn cấp này. - Thế hệ thứ hai Thế hệ thứ hai của cỏc cơ sở dữ liệu được đặc trưng bởi mụ hỡnh dữ liệu quan hệ và mụ hỡnh dữ liệu quan hệ thực thể. Mụ hỡnh dữ liệu quan hệ đặc trưng bởi cấu trỳc dữ liệu được tạo nờn bởi một hệ thống cỏc quan hệ (biểu diễn dạng bảng), trong đú quan hệ biểu diễn một đối tượng của tổ chức. Mụ hỡnh dữ liệu quan hệ thực thể cú thể coi như là một loại mụ hỡnh quan hệ, nú tập trung trong một mụ hỡnh cỏc ưu điểm của mụ hỡnh dữ liệu mạng và mụ hỡnh dữ liệu quan hệ. đúng gúp của mụ hỡnh này là đưa ra một quan niệm thống nhất giữa cỏc dữ liệu thụng qua sự đi lại dễ dàng cho phộp trong cơ sở dữ liệu. - Thế hệ thứ ba 9
  10. ------------------------------------------------------------------------------------ Là cỏc cơ sở dữ liệu hiện nay đang được phỏt triển. Cỏc cơ sở dữ liệu này cho phộp lưu trữ cỏc thụng tin truyền thống, đồng thời cũng lưu trữ cỏc văn bản, hỡnh ảnh, õm thanh, … mụ hỡnh dữ liệu đang được nghiờn cứu phỏt triển là mụ hỡnh dữ liệu hướng đối tượng. 10
  11. ------------------------------------------------------------------------------------ 1.3 KHÁI NIỆM TOÁN HỌC HOÁ Mễ HèNH QUAN HỆ 1.3.1 Thuộc tớnh (Attribute) Một thuộc tớnh biểu thị một đơn vị thụng tin nhỏ nhất, cú thể được sử dụng tự do và cú ý nghĩa độc lập với cỏc đơn vị thụng tin khỏc. Trong mọi mụ hỡnh, thuộc tớnh đại diện cho một phần tử cơ sở của hệ thống thụng tin. Mỗi đặc trưng của một kiểu thực thể hoặc một kiểu liờn kết dược biểu thị trong hệ thống thụng tin bằng một thuộc tớnh. Một thuộc tớnh được xỏc định bằng một cặp {Tờn thuộc tớnh, miền giỏ trị} i) Tờn thuộc tớnh. Để xỏc định một thuộc tớnh, người ta đặt cho nú một cỏi tờn (nờn cú tớnh gợi nhớ), tờn này được gọi là tờn thuộc tớnh. Tờn thuộc tớnh là duy nhất cho mỗi thuộc tớnh. Để đảm bảo tớnh duy nhất của tờn thuộc tớnh và phõn biệt với cỏc tờn thuộc tớnh khỏc, người ta lập ra một từ điển cỏc tờn thuộc tớnh, mỗi tờn thuộc tớnh là một từ của từ điển đú. Trong chừng mực cú thể, cần loại bỏ tớnh đồng nghĩa hoặc nhiều nghĩa của từ. Cú thể dựng từ viết tắt để đặt tờn cho thuộc tớnh. ii) Miền giỏ trị. Mỗi thuộc tớnh đều thuộc một kiểu dữ liệu, kiểu dữ liệu cú thể là vụ hướng hoặc cú cấu trỳc. Kiểu dữ liệu cú cấu trỳc được định nghĩa dựa trờn cỏc kiểu dữ liệu vụ hướng. Do ràng buộc toàn vẹn, một thuộc tớnh thường chỉ chọn lấy giỏ trị trong một tập hợp con của kiểu dữ liệu. Tập hợp cỏc phần tử mà một thuộc tớnh cú thể lấy giỏ trị gọi là miền giỏ trị (domain), núi cỏch khỏc, miền giỏ trị tà tập hợp cỏc giỏ trị cựng loại cú thể cú của thuộc tớnh. Núi chung, một giỏ trị của một thuộc tớnh là sự thể hiện trong hệ thống thụng tin một giỏ trị của một sự kiện của thế giới thực. Xột tập cỏc thuộc tớnh trong một hệ thống thụng tin, khi giỏ trị của một thuộc tớnh là giỏ trị nhận được từ cỏc giỏ trị của cỏc thuộc tớnh khỏc thỡ thuộc tớnh này được gọi là thuộc tớnh tớnh toỏn, trong trường hợp ngược lại thỡ gọi là thuộc tớnh khụng tớnh toỏn. Rừ ràng cỏc giỏ trị của một thuộc tớnh khụng tớnh toỏn phải được cung cấp từ thế giới thực. Vớ dụ: thuộc tớnh điểm trung bỡnh mụn (DTB) được tớnh toỏn từ điểm cỏc mụn, điểm cỏc mụn ta phải nhập vào. Do đú DTB là thuộc tớnh tớnh toỏn, điểm cỏc mụn là thuộc tớnh khụng tớnh toỏn. Chỳ ý: Giỏ trị của một thuộc tớnh khụng phải lỳc nào cũng xỏc định được nờn người ta quy ước: miền giỏ trị của cỏc thuộc tớnh đều cú thể chứa thờm một giỏ trị đặc biệt gọi là giỏ trị rỗng (null). Giỏ trị rỗng này, tuỳ theo ngữ cảnh, cú thể đặc trưng cho một giỏ trị khụng thể xỏc định được hoặc được đặc trưng cho một giỏ trị chưa thể xỏc định được ở thời điểm đang xột nhưng cú thể được biết vào thời điểm khỏc. iii) Cỏch mụ tả miền giỏ trị của một thuộc tớnh - Nếu số cỏc phần tử của miền giỏ trị là ớt thỡ liệt kờ tất cả cỏc giỏ trị của cỏc phần tử. Vớ dụ: {Giới tớnh, (nam, nữ)}, {Màu, (xanh, đỏ, tớm, vàng)} 11
  12. ------------------------------------------------------------------------------------ - Nếu số cỏc phần tử của miền giỏ trị nhiều thỡ dựng cỏch mụ tả tập hợp. Vớ dụ: {Tuổi học sinh, số nguyờn N: N ∈ [6, 18]} - Nếu số cỏc phần tử của miền giỏ trị rất nhiều hoặc khụng biết trước được mà khụng cú tớnh chất đặc trưng nào thỡ mụ tả tập hợp đú theo kiểu của dữ liệu. Vớ dụ: {Họ tờn, chuỗi ký tự cú độ dài nhỏ hơn 50} - Nếu kiểu dữ liệu của thuộc tớnh cú cấu trỳc thỡ miền giỏ trị của nú là tớch đề cỏc của cỏc miền giỏ trị thành phần. Vớ dụ: Type Toa_do_man_hinh = Record x: 0..24; y: 0..79; End; {Toa_do_man_hinh, [0..24] x [0..79]} Tuy nhiờn, cú những trường hợp miền giỏ trị của một thuộc tớnh chỉ là một tập con thực sự của tớch đề cỏc của cỏc miền giỏ trị thành phần. Vớ dụ: Type Ngay_duong_lich = Record d: 1..31; y: 1..12; y: 1..2000; End; {Ngay_duong_lich, phần tử ⊂ [1..31] x [1..12] x [1..2000]} 1.3.2 Quan hệ (Relation) Cho R = {a1, a2, …, an} là một tập hữu hạn và khụng rỗng thuộc tớnh. Mỗi thuộc tớnh ai cú miền giỏ trị D a (cỏc miền giỏ trị D a khụng nhất thiết phải khỏc biệt nhau). Một quan hệ r trờn R là cỏc bộ i i {h1, h2, …, hm} với mỗi hj (j = 1, 2, …, m) là một hàm: hj : R UD ai sao cho hj(ai) ∈ D a . Núi cỏch khỏc, một quan hệ r trờn R là tập hợp con của tớch đề i ai ∈R cỏc của n miền giỏ trị D a x D a x … x D a . Giỏ trị n được gọi là bậc của r, giỏ trị m được gọi là lực i 2 n lượng của r. Theo định nghĩa, lực lượng của một quan hệ cú thể vụ hạn, nhưng chỉ cú ý nghĩa sử dụng 12
  13. ------------------------------------------------------------------------------------ khi lực lượng của quan hệ là hữu hạn mặc dự nú cú thể rất lớn, vỡ vậy khi xột một quan hệ ta luụn luụn coi rằng lực lượng của nú là hữu hạn. Quan hệ r cú thể được biểu diễn dưới dạng bảng: a1 a2 … an h1 h1(a1) h1(a2) … h1(an) h2 h2(a2) h2(a2) … h2(an) … … … … … hm hm(a1) hm(a2) … hm(an) 1.3.3 Khỏi niệm phụ thuộc hàm (Function dependency) Khỏi niệm về phụ thuộc hàm là một khỏi niệm cú tầm quan trọng rất lớn đối với việc thiết kế CSDL quan hệ. Năm 1970 khỏi niệm này được E.F.Codd đề cập nhằm giải quyết vấn đề phõn ró cỏc quan hệ (khi chuẩn hoỏ cỏc quan hệ) mà khụng làm mất thụng tin. Định nghĩa 1. Phụ thuộc hàm trờn quan hệ Cho R = {a1, a2, …, an} là một tập hữu hạn và khụng rỗng thuộc tớnh. r = {h1, h2, …, hn} là một quan hệ r trờn R, và A, B ⊆ R. Khi đú ta núi A xỏc định hàm cho B hay B phụ thuộc hàm vào A trong r (ký f phỏp A > B) nếu và chỉ nếu: r ( ∀ hi, hj ∈ r) ( ∀ a ∈ A) ( ∀ hi(a) = hj(a)) ⇒ ( ∀ b ∈ B) ( ∀ hi(b) = hj(b)). Núi cỏch khỏc, tập thuộc tớnh B phụ thuộc hàm vào tập thuộc tớnh A nếu ở mọi thời điểm, sự hiểu biết một giỏ trị của tập A xỏc định sự hiểu biết một giỏ trị của tập B. Định nghĩa 2. Phụ thuộc hàm trờn tập cỏc thuộc tớnh Cho R = {a1, a2, …, an} là một tập hữu hạn và khụng rỗng thuộc tớnh. Một phụ thuộc hàm trờn tập cỏc thuộc tớnh R là một dóy ký tự cú dạng A → B với A, B ⊆ R. f Ta núi phụ thuộc hàm A → B là đỳng trong quan hệ r nếu A > B, khi đú ta cũng núi rằng r thoả r món A → B. f Chỳ ý: Ta cú thể viết (A, B) hoặc A → B thay cho A > B nếu khụng sợ nhầm lẫn về mặt ký r phỏp. 1.3.4 Khoỏ (Key) Định nghĩa Giả sử r là một quan hệ trờn R và K ⊆ R. Khi đú K là một khoỏ của r nếu K → R. Gọi K là một khoỏ tối thiểu của r nếu: - K là một khoỏ của r 13
  14. ------------------------------------------------------------------------------------ - Bất kỳ một tập con thực sự của K khụng là khoỏ của r. Cỏc thuộc tớnh tham gia vào một khoỏ được gọi là thuộc tớnh khoỏ, cỏc thuộc tớnh khụng tham gia vào một khoỏ gọi là thuộc tớnh khụng khoỏ. Từ định nghĩa của quan hệ và định nghĩa của khoỏ dễ thấy rằng một quan hệ luụn luụn cú ớt nhất một khoỏ (tầm thường nhất là lấy R làm khoỏ), cú thể cú nhiều khoỏ và cú thể cú nhiều khoỏ tối thiểu. Từ định nghĩa của khoỏ và định nghĩa phụ thuộc hàm trờn quan hệ ta cú thể chứng minh rằng khoỏ được dựng làm cơ sở để phõn biệt hai bộ tuỳ ý trong một quan hệ. Núi cỏch khỏc, khoỏ của một quan hệ r trờn R là tập con K ⊆ R thoả món cỏc tớnh chất: Với bất kỳ hai bộ hi, hj ∈ r đều tồn tại thuộc tớnh a ∈ K sao cho hi(a) ≠ hj(a) tức là khụng tồn tại hai bộ thuộc r mà cú giỏ trị bằng nhau trờn mọi thuộc tớnh của K. Do vậy mỗi giỏ trị của khoỏ K là xỏc định duy nhất. Từ đõy ta thấy ý nghĩa thực tế của khoỏ là dựng để nhận diện một bộ trong một quan hệ, nghĩa là khi cần tỡm một bộ hi nào đú ta chỉ cần biết giỏ trị của cỏc thuộc tớnh khoỏ của hi là đủ. Xột về mặt hiệu quả sử dụng thỡ dựng khoỏ tối thiểu là tốt nhất. Vớ dụ: xột quan hệ r trờn R = {SCMT, SBD, Họ và tờn, Ngày sinh, Điểm mụn 1, Điểm mụn 2, Điểm mụn 3} ta thấy quan hệ này ớt nhất cú cỏc khoỏ: K = {SBD} K = {SBD, Họ và tờn} K = {SBD, Họ và tờn, Ngày sinh} K = {SCMT} K = { SCMT, Họ và tờn} K = { SCMT, Họ và tờn, Ngày sinh} Dễ thấy {SBD} và {SCMT} là cỏc khoỏ tối thiểu. Trong trường hợp quan hệ cú nhiều khoỏ tối thiểu, khi cài đặt trờn một HQT CSDL người sử dụng chọn một trong số cỏc khoỏ tối thiểu để làm cơ sở nhận diện một bộ trong quan hệ, khoỏ được chọn này được gọi là khoỏ chớnh (primary key). Khoỏ chớnh chỉ thật sự cú ý nghĩa trong quỏ trỡnh khai thỏc CSDL, cũn về phương diện lý thuyết, khoỏ chớnh khụng cú vai trũ gỡ khỏc cỏc khoỏ tối thiểu cũn lại. Trong một số HQT CSDL như Access, Oracle, DB2, … cú cài đặt cơ chế tự động kiểm tra tớnh duy nhất trờn khoỏ chớnh. Vớ dụ, nếu thờm một bộ mới hn cú giỏ trị khoỏ chớnh trựng với giỏ trị khoỏ chớnh của một bộ hi đó cú thỡ hệ thống sẽ thụng bỏo lỗi và yờu cầu nhập lại một giỏ trị khỏc. Để cho thuận tiện trong cỏc phộp xử lý, người ta thường quy ước: 1. Trong một bộ của một quan hệ cỏc thuộc tớnh khoỏ khụng chứa cỏc giỏ trị rỗng. 2. Khụng được phộp sửa đổi giỏ trị của thuộc tớnh khoỏ. Nếu muốn sửa đổi giỏ trị của thuộc tớnh khúa của một bộ h, người sử dụng phải xoỏ bộ h và sau đú thờm mới một bộ h’ với giỏ trị của thuộc tớnh khoỏ đó được sửa đổi. 14
  15. ------------------------------------------------------------------------------------ 1.3.5 Lược đồ quan hệ (Relation Schema) Định nghĩa: Một lược đồ quan hệ s (hay một sơ đồ quan hệ) là một cặp trong đú R là một tập hữu hạn và khụng rỗng cỏc thuộc tớnh, F là tập cỏc phụ thuộc hàm trờn R. Chỳ ý: 1. Cần phõn biệt khỏi niệm quan hệ và lược đồ quan hệ, một quan hệ thuộc vào khụng gian cơ sở dữ liệu, một lược đồ quan hệ thuộc vào sơ đồ thiết kế. 2. Thứ tự cỏc thuộc tớnh trong R, thứ tự cỏc bộ trong r, thứ tự cỏc phụ thuộc hàm trong F là khụng quan trọng. 3. Trong một quan hệ khụng được cú 2 bộ bất kỳ tựng nhau. Vớ dụ: Trong hệ quản trị cơ sở dữ liệu Foxpro mỗi lược đồ quan hệ được đặt tương ứng với cấu trỳc của một file dữ liệu, cũn quan hệ chớnh là file dữ liệu đú. Mỗi thuộc tớnh ứng với một trường, mỗi bộ ứng với một bản ghi. Số lượng cỏc bản ghi chớnh là lực lượng của quan hệ. 1.3.6 Phộp tỏch lược đồ quan hệ Định nghĩa 1: Phộp phõn ró một lược đồ quan hệ s trờn R = {a1, a2, …, an} là việc thay thế lược đồ quan hệ s bằng một tập cỏc sơ đồ quan hệ s1, s2, …, sk tương ứng trờn R1, R1, …, Rk, trong đú Ri ⊆ R, k i = 1, 2, …, k và R = UR i =1 i , ở đõy khụng đũi hỏi cỏc Ri phải phõn biệt với nhau. Mục đớch của phộp phõn ró này là nhằm loai bỏ cỏc dữ liệu dư thừa (redundancy) và loại bỏ cỏc dị thường: khụng nhất quỏn (inconsistency), dị thường khi thờm bộ (insertion anormalous), dị thường khi xoỏ bộ (Deletion anormalous) của quan hệ khi thực hiện cỏc phộp cập nhật (sửa, thờm, xoỏ). Vớ dụ xột quan hệ HANG {Tờn hóng (TH), Địa chỉ (DC), Mặt hàng (MH), Đơn giỏ(DG)} ta sẽ thấy: a. Dư thừa dữ liệu: khi cú tờn hóng, thỡ lại cú địa chỉ của hóng đú trong quan hệ. b. Khụng nhất quỏn, là hệ quả của a); giả sử trong quan hệ cú nhiều bộ ghi tờn hóng và địa chỉ thỡ khi địa chỉ của hóng thay đổi, nếu ta chỉ sửa địa chỉ này trờn một số bộ thỡ cỏc bộ khỏc vẫn giữ giỏ trị cũ. c. Dị thường khi thờm bộ: một hóng chưa cung cấp mặt hàng nào thỡ chưa thể thờm bộ ứng với hóng đú được (khụng đưa được mặt hàng, đơn giỏ vào). d. Dị thường khi xoỏ bộ: là vấn đề ngược lại của c); nếu bỏ tất cả cỏc mặt hàng trong quan hệ thỡ tờn hóng và địa chỉ của hóng cũng bị xoỏ theo (nhất là trong trường hợp nhiều hóng cựng cung cấp một mặt hàng). Do vậy, vấn đề đặt ra là: cú thể phõn ró quan hệ trờn thành một tập cỏc quan hệ con nhằm trỏnh tất cả cỏc điều đó núi ở trờn, nhưng khụng bị mất mỏt thụng tin. Ta định nghĩa phộp phõn ró khụng mất thụng tin như sau: 15
  16. ------------------------------------------------------------------------------------ Định nghĩa 2: Giả sử lược đồ quan hệ s = được phõn ró thành cỏc lược đồ quan hệ s1, s2, …, sk với si = , i = 1, 2, …, k. Ri ⊆ R, Fi là chiếu của F trờn Ri. Khi đú ta núi rằng, phộp phõn ró trờn là phõn ró khụng mất thụng tin (lossless join decomposition) đối với F nếu với quan hệ: r= ∏ R1 (r ) >< ∏ R 2 (r ) >< … >< ∏ Rk (r) trờn R thoả F. Thuật toỏn: kiểm tra phộp phõn ró khụng mất thụng tin Vào: s = , phộp phõn ró ρ =(s1, s2, …, sk), si = Ra: kết luận phộp phõn ró ρ cú phải là khụng mất thụng tin khụng? Thuật toỏn: - Thiết lập một bảng với n cột và k hàng; hàng i ứng với sơ đồ quan hệ Ri, cột j ứng với thuộc tớnh aj. Tại ụ (i, j) điền Aj nếu aj ∈ Ri, ngược lại điền ký hiệu bij. - Bõy giờ xột cỏc phụ thuộc hàm từ F ỏp dụng cho bảng vừa thiết lập được. Giả sử X → Y ∈ F, xột cỏc hàng và nếu cú giỏ trị bằng nhau trờn thuộc tớnh X thỡ làm bằng cỏc giỏ trị của chỳng trờn thuộc tớnh Y theo cỏch sau: Nếu một giỏ trị là Aj thỡ chuyển cỏc giỏ trị thành Aj, ngược lại thỡ chuyển cỏc giỏ trị thành một trong cỏc ký hiệu bij. - Tiếp tục ỏp dụng cỏc phụ thuộc hàm cho bảng (kể cả việc lặp lại phụ thuộc hàm đó được ỏp dụng) cho đến khi khụng cũn ỏp dụng được nữa. - Cuối cựng, xem xột bảng kết quả: nếu xuất hiện một hàng cú đủ A1, A2, …, An thỡ phộp phõn ró khụng mất thụng tin, ngược lại là phộp phõn ró mất thụng tin. Vớ dụ: Cho s = với R = {a, b, c, d, e, g}, F = {a → b, cd → a, bc → d, ae → g, ce → d}, ρ = (s1, s2, …, sk) với: R1 = {a, b}, R2 = {a, c, d}, R3 = {b, c, d}, R4 = {a, e, g}, R5 = {c, d, e}. Kiểm tra xem phộp phõn ró mất thụng tin? - Lập bảng: 1 a b c d e g Xột 2 a b c d e g s1 A1 A2 b13 b14 b15 b16 a→b s1 A1 A2 b13 b14 b15 b16 s2 A1 b22 A3 A4 b25 b26 s2 A1 A2 A3 A4 b25 b26 s3 b31 A2 A3 A4 b35 b36 s3 b31 A2 A3 A4 b35 b36 s4 A1 b42 b43 b44 A5 A6 s4 A1 A2 b43 b44 A5 A6 s5 b51 b52 A3 A4 A5 b56 s5 b51 b52 A3 A4 A5 b56 - Xột phụ thuộc hàm cd → a ta cú bảng sau (xột tiếp bc → d bảng khụng thay đổi): 3 a b c d e g Xột 4 a b c d e g 16
  17. ------------------------------------------------------------------------------------ s1 A1 A2 b13 b14 b15 b16 ae → g s1 A1 A2 b13 b14 b15 b16 s2 A1 A2 A3 A4 b25 b26 s2 A1 A2 A3 A4 b25 b26 s3 A1 A2 A3 A4 b35 b36 s3 A1 A2 A3 A4 b35 b36 s4 A1 A2 b43 b44 A5 A6 s4 A1 A2 b43 b44 A5 A6 s5 A1 b52 A3 A4 A5 b56 s5 A1 b52 A3 A4 A5 A6 - Xột phụ thuộc hàm ce → d bảng khụng đổi (quay lại xột a → b ta cú bảng sau): 5 a b c d e g Bảng 6 a b c d e g s1 A1 A2 b13 b14 b15 b16 kết quả s1 A1 A2 b13 b14 b15 b16 s2 A1 A2 A3 A4 b25 b26 s2 A1 A2 A3 A4 b25 b26 s3 A1 A2 A3 A4 b35 b36 s3 A1 A2 A3 A4 b35 b36 s4 A1 A2 b43 b44 A5 A6 s4 A1 A2 b43 b44 A5 A6 s5 A1 A2 A3 A4 A5 A6 s5 A1 A2 A3 A4 A5 A6 - Tiếp tục ỏp dụng cỏc phụ thuộc hàm cd → a, bc → d, ae → g, ce → d cũn lại, bảng (5) khụng thay đổi. Cuối cựng ta cú bảng kết quả (6). Trong bảng này hàng thứ 5 cú đủ A1, A2, …, A6 nờn ta kết luận phộp phõn ró này khụng mất thụng tin. 1.3.7 Bao đúng của tập phụ thuộc hàm Định nghĩa Xột lược đồ quan hệ s = ; A, B ⊆ R, A → B là một phụ thuộc hàm. Ta núi rằng A → B được suy diễn logic từ F nếu quan hệ r trờn R đều thoả món cỏc phụ thuộc hàm của F thỡ cũng thoả món phụ thuộc hàm A → B. Gọi tập tất cả cỏc phụ thuộc hàm được suy diễn logic từ F là bao đúng (closure) của F, ký phỏp là F+. Nếu F = F+ thỡ F được gọi là họ đầy đủ (full family) cỏc phụ thuộc hàm. 1.3.8 Hệ tiờn đề cho phụ thuộc hàm Để cú thể xỏc định được khoỏ của một quan hệ và cỏc suy diễn lụgic giữa cỏc phụ thuộc hàm cần thiết phải tớnh được F+ từ F, điều này đũi hỏi phải cú cỏc quy tắc, muốn vậy phải xõy dựng hệ tiờn đề cho phụ thuộc hàm. Cho R là một tập hữu hạn và khụng rỗng cỏc thuộc tớnh, ký phỏp P(R) là tập cỏc tập con của R, giả sử A, B, C ∈ P(R). - Tiờn đề 1 (Phản xạ): B ⊆ A thỡ A → B - Tiờn đề 2 (Tăng trưởng): A → B thỡ A ∪ C → B ∪ C - Tiờn đề 3 (Bắc cầu): A → B và B → C thỡ A → C 17
  18. ------------------------------------------------------------------------------------ Hệ tiờn đề trờn do W.W. Armstrong phỏt biểu đầu tiờn năm 1974 nờn nú cũn được gọi là hệ tiờn đề Armstrong. Bài tập: chứng minh hệ tiờn đề Armstrong là đỳng trờn quan hệ r. Vớ dụ: Cho F = {A ∪ B → C, C → A}, dựng hệ tiờn đề Armstrong chứng minh rằng B ∪ C → A ∪ B ∪ C. Chứng minh: 1. C → A (giả thiết) 2. C ∪ B → A ∪ B hay B ∪ C → A ∪ B (tăng trưởng của 1. thờm B) 3. A ∪ B → C (giả thiết) 4. A ∪ B ∪ ( A ∪ B) → C ∪ (A ∪ B) hay A ∪ B → A ∪ B ∪ C (tăng trưởng 3. thờm A ∪ B) 5. B ∪ C → A ∪ B ∪ C (bắc cầu từ 2. và 4.) Một số tớnh chất của phụ thuộc hàm: 1) Tớnh chất hợp: nếu A → B và A → C thỡ A → B ∪ C 2) Tớnh chất tựa bắc cầu: nếu A → B và B ∪ D → C thỡ A ∪ D → C 3) Tớnh chất tỏch: nếu A → B và C ⊆ B thỡ A → C 1.3.9 Cỏc dạng phụ thuộc hàm i) Phụ thuộc hàm đầy đủ (fully functional dependence) Định nghĩa: Giả sử r là một quan hệ trờn tập thuộc tớnh R và A, B ∈ P(R), khi đú B được gọi là phụ thuộc hàm đầy đủ (fully functional dependence) vào A nếu B phụ thuộc hàm vào A, nhưng khụng phụ thuộc hàm vào bất kỳ một tập con thực sự nào của A. ii) Phụ thuộc hàm bắc cầu Định nghĩa: Giả sử r là một quan hệ trờn tập thuộc tớnh R và A, C ∈ P(R), khi đú C được gọi là phụ thuộc hàm bắc cầu vào A trờn R nếu tồn tại B ∈ P(R) sao cho A → B, B → C, nhưng B khụng xỏc định hàm cho A với C ⊄ A ∪ B. Tớnh bắc cầu thể hiện qua sơ đồ sau: A B C Sơ đồ chỉ ra rằng C cú thể xỏc định hàm cho B, tuy nhiờn nếu khụng thỡ phụ thuộc hàm bắc cầu theo định nghĩa trờn gọi là phụ thuộc hàm theo nghĩa chặt. 18
  19. ------------------------------------------------------------------------------------ Điều kiện C ⊄ A ∪ B là cần thiết vỡ nếu C ⊆ B ⊆ A thỡ theo tiờn đề phản xạ luụn cú A → B → C, cũn điều kiện B khụng xỏc định hàm cho A để loại bỏ nhiều khoỏ khỏi quan hệ ở dạng chuẩn 3. 1.4 CÁC PHẫP TOÁN CỦA NGễN NGỮ THAO TÁC DỮ LIỆU Cỏc phộp tớnh cơ bản mà nhờ đú một cơ sở dữ liệu được thay đổi là chốn (insert), loại bỏ (delete), và thay đổi (change). Trong mụ hỡnh cơ sở dữ liệu quan hệ được nờu trờn, cỏc phộp tớnh này được ỏp dụng cho từng bộ của cỏc quan hệ lưu trữ trong mỏy. 1.4.1 Phộp chốn (Insert) Phộp chốn thờm một bộ vào quan hệ r trờn R = {a1, a2, …, an} cú dạng r= r ∪ t. Cỳ phỏp: INSERT (r; a1 = d1, a2 = d2, …, an = dn) Trong đú ai với i= 1, n là cỏc tờn thuộc tớnh, di ∈ dom(ai) là cỏc giỏ trị thuộc miền trị tương ứng của thuộc tớnh ai. Vớ dụ: Thờm một bộ hi = (Fujitsu, F8 fortuna LH, PC, 1200$) vào quan hệ HANG. INSERT( HANG; TH = Fujitsu, DC = F8 fortuna LH, MH = PC, DG = 1200$) Nếu xem thứ tự cỏc trường là cố định, khi đú cú thể biểu diễn phộp chốn dưới dạng khụng tường minh như sau: INSERT (r; d1, d2, …, dn) Mục đớch của phộp chốn là thờm một bộ phận vào một quan hệ nhất định. Kết quả của phộp tớnh này cú thể gõy ra một số sai sút bởi những lý do sau: 1. Bộ mới được thờm vào là khụng phự hợp với lược đồ quan hệ cho trước. 2. Một số giỏ trị của một số thuộc tớnh nằm ngoài miền giỏ trị của thuộc tớnh đú. 3. Giỏ trị khoỏ của bộ mới cú thể là giỏ trị đó cú trong quan hệ đang lưu trữ. 1.4.2 Phộp loại bỏ (Del) Phộp loại bỏ (Del) là phộp xoỏ một bộ ra khỏi một quan hệ cho trước. Giống như phộp chốn, phộp loại bỏ cú dạng: r = r – t Cỳ phỏp: DEL (r; a1 = d1, a2 = d2, …, an = dn) hoặc: DEL (r; d1, d2, …, dn) Vớ dụ: Xoỏ một bộ hi = (Fujitsu, F8 fortuna LH, PC, 1200$) trong quan hệ HANG. DEL ( HANG; Fujitsu, F8 fortuna LH, PC, 1200$) Tuy nhiờn khụng phải bao giờ cũng cần cung cấp toàn bộ cỏc thụng tin (giỏ trị thuộc tớnh) trong phộp loại bỏ, trong trường hợp ta biết khoỏ của quan hệ, chẳng hạn K = {b1, b2, …, bm}, thụng thường m
  20. ------------------------------------------------------------------------------------ 1.4.3 Phộp thay đổi (Change) Ta cú thể dựng hai phộp tớnh trờn để xử lý toàn bộ cỏc thao tỏc trờn CSDL quan hệ, tuy nhiờn đụi khi người ta chỉ cần thay đổi giỏ trị của một hay một số cỏc thuộc tớnh nhất định, khi đú sử dụng phộp tớnh thay đổi (CH) là rất cần thiết, nhằm giảm thiểu cỏc thao tỏc cũng như sự nhầm lẫn cú thể cú. Phộp thay đổi như sau: Gọi tập {c1, c2, …, cp} ⊆ {a1, a2, …, an} là tập cỏc thuộc tớnh của bộ cần thay đổi giỏ trị, phộp thay đổi cú dạng: Cỳ phỏp: CH (r; a1 = d1, a2 = d2, …, an = dn; c1 = e1, c2 = e2, …, cn = ep) Nếu K = {b1, b2, …, bm} là khoỏ của quan hệ khi đú chỉ cần viết: CH (r; b1 = d1, b2 = d2, …, bm = dm; c1 = e1, c2 = e2, …, cn = ep). Vớ dụ: Cụng ty Fujitsu đó hết hạn thuờ địa chỉ F8 fortuna LH, họ chuyển toàn bộ tổ chức hiện cú vào HCM city, khi đú ta cú phộp thay đổi sau. CH (HANG; TH = Fujitsu, DC = F8 fortuna LH, MH = PC, DG = 1200$; DC = Q1 HCM city). 1.5 CÁCH THỨC TỔ CHỨC DỮ LIỆU VẬT Lí 1.5.1 Giới thiệu cỏch thức tổ chức dữ liệu Dữ liệu vật lý là kết quả thể hiện của việc đưa thụng tin vào quản lý trờn mỏy tớnh. Ở mức này cơ sở dữ liệu vật lý được tổ chức dưới dạng cỏc tệp (file) dữ liệu, bao gồm cỏc bản ghi cú cựng cấu trỳc xỏc định (loại bản ghi), đồng thời mỗi bản ghi được phõn chia thành cỏc trường dữ liệu (field names), mỗi trường chiếm một số xỏc định cỏc bytes và cú kiểu dữ liệu cố định. Cỏc phộp tớnh đặc trưng trờn cỏc tệp dữ liệu là: - Thờm một bản ghi - Xoỏ một bản ghi - Sửa một bản ghi - Tỡm một bản ghi theo giỏ trị xỏc định tại một trường hoặc một số trường nào đú. Chỳ ý: cần thận trọng trong việc xoỏ một bản ghi trong CSDL, thụng thường trong cỏc hệ quản trị cơ sở dữ liệu người ta luụn cung cấp cơ chế xoỏ hai lần. Lần thứ nhất là xoỏ về mặt logic, lần thứ hai mới thực sự xoỏ và trong trường hợp này ta khụng khụi phục lại được. 1.5.2 Mụ hỡnh tổ chức bộ nhớ ngoài Bộ nhớ ngoài hay cũn gọi là bộ nhớ thứ cấp, bộ nhớ ngoài cú thể là bỡa đục lỗ, băng từ, đĩa từ, đĩa quang, trồng từ … Hiện nay, đĩa từ được sử dụng rất rộng rói, phổ biến và trở thành một phần khụng thể thiếu được đối với mỏy tớnh điện tử. Do vậy ta chỉ xột việc tổ chức thụng tin trờn đĩa từ như một vớ dụ chuẩn mực cho mụ hỡnh tổ chức bộ nhớ ngoài. Đĩa từ được chia thành nhiều rónh (track - được đỏnh số 0,1,2, … từ ngoài vào trong), tập cỏc rónh cú cựng số thứ tự được gọi là cỏc cylinder, mỗi rónh lại được chia thành nhiều cỏc sector. Cỏc sector hay 20

CÓ THỂ BẠN MUỐN DOWNLOAD

Đồng bộ tài khoản