Tải bản đầy đủ (.pdf) (73 trang)

Luận văn chuẩn hoá và tựa chuẩn hoá trong mô hình dữ liệu dạng khối (

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.4 MB, 73 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƢỜNG ĐẠI HỌC SƢ PHẠM HÀ NỘI 2

TRƢƠNG THỊ PHƢƠNG

CHUẨN HOÁ VÀ TỰA CHUẨN HOÁ
TRONG MÔ HÌNH DỮ LIỆU DẠNG KHỐI

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

HÀ NỘI, 2018


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƢỜNG ĐẠI HỌC SƢ PHẠM HÀ NỘI 2

TRƢƠNG THỊ PHƢƠNG

CHUẨN HOÁ VÀ TỰA CHUẨN HOÁ
TRONG MÔ HÌNH DỮ LIỆU DẠNG KHỐI
Chuyên ngành: KHOA HỌC MÁY TÍNH
Mã số: 8 48 01 01

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Ngƣời hƣớng dẫn khoa học: PGS.TS Trịnh Đình Thắng
TS. Trần Minh Tuyến

HÀ NỘI, 2018


i



LỜI CẢM ƠN

Tôi xin gửi lời cảm ơn sâu sắc nhất đến PGS.TS Trịnh Đình Thắng và
TS. Trần Minh Tuyến, ngƣời thầy hƣớng dẫn khoa học và tận tình hƣớng
dẫn tôi trong suốt quá trình tôi nghiên cứu, học tập và thực hiện luận văn thạc
sỹ này.
Tôi cũng xin cảm ơn các thầy cô giáo trƣờng Đại học Sƣ Phạm Hà Nội
2 đã nhiệt tình giảng dạy, chỉ bảo, truyền đạt những kiến thức, những kinh
nghiệm trong thời gian học tập và nghiên cứu.
Cuối cùng, tôi xin gửi lời cảm ơn đến gia đình, ngƣời thân, bạn bè và
đồng nghiệp đã động viên, giúp đỡ và khuyến khích tôi trong suốt thời gian
học cao học cũng nhƣ quá trình thực hiện luận văn cao học.
Mặc dù đã cố gắng trong quá trình thực hiện nhƣng luận văn không thể
tránh khỏi những sai sót. Tôi mong nhận đƣợc sự góp ý chân thành của quý
thầy cô, quý đồng nghiệp và bạn bè.
Xin trân trọng cảm ơn!
Hà Nội, tháng 8 năm 2018
Học viên

Trƣơng Thị Phƣơng


ii

LỜI CAM ĐOAN
Tôi xin cam đoan đây là kết quả nghiên cứu của tôi dƣới sự hƣớng dẫn
khoa học của PGS.TS Trịnh Đình Thắng và TS. Trần Minh Tuyến. Tôi xin
cam đoan r ng số liệu và kết quả nghiên cứu trong luận văn này là trung thực
và không trùng lặp với các đề tài khác. Tôi cũng xin cam đoan r ng mọi sự

giúp đỡ cho việc thực hiện luận văn này đã đƣợc cảm ơn và các thông tin trích
dẫn trong luận văn đã đƣợc chỉ rõ nguồn gốc.
Hà Nội, tháng 8 năm 2018
Học viên

Trƣơng Thị Phƣơng


iii

MỤC LỤC
LỜI CẢM ƠN .................................................................................................... i
LỜI CAM ĐOAN ............................................................................................. ii
MỤC LỤC ........................................................................................................ iii
DANH MỤC KÝ HIỆU VÀ CHỮ CÁI VIẾT TẮT ........................................ v
DANH MỤC CÁC BẢNG............................................................................... vi
DANH MỤC CÁC HÌNH ............................................................................... vii
MỞ ĐẦU ........................................................................................................... 1
CHƢƠNG 1: MÔ HÌNH DỮ LIỆU QUAN HỆ ............................................... 4
1.1. Mô hình dữ liệu quan hệ ............................................................................ 4
1.1.1. Thuộc tính và miền thuộc tính ............................................................. 4
1.1.2. Quan hệ ................................................................................................ 5
1.2. Đại số quan hệ ............................................................................................ 6
1.3. Phụ thuộc hàm .......................................................................................... 13
1.3.1. Định nghĩa và tính chất phụ thuộc hàm ............................................. 13
1.3.2. Hệ tiên đề Armstrong......................................................................... 15
1.4. Bao đóng .................................................................................................. 15
1.4.1. Các tính chất của bao đóng ................................................................ 16
1.4.2. Thuật toán tìm bao đóng của tập thuộc tính ...................................... 16
1.5. Khóa ......................................................................................................... 18

1.6. Các dạng chuẩn của mô hình dữ liệu quan hệ.......................................... 20
1.6.1. Dạng 1NF (First Normal Form) ......................................................... 20
1.6.2. Dạng 2NF (Second Normal Form) .................................................... 22
1.6.3. Dạng 3NF (Third Nomal Form)......................................................... 23
1.6.4. Dạng chuẩn BCNF (Boyce-Codd Normal Form) .............................. 24


iv

Kết luận .......................................................................................................... 25
CHƢƠNG 2: MÔ HÌNH DỮ LIỆU DẠNG KHỐI ........................................ 26
2.1. Khối, lƣợc đồ khối ................................................................................... 26
2.2. Lát cắt ....................................................................................................... 28
2.3. Các phép tính trên khối ............................................................................ 30
2.3.1. Phép chèn ........................................................................................... 30
2.3.2. Phép loại bỏ ....................................................................................... 30
2.4. Đại số quan hệ trên khối........................................................................... 31
2.5. Phụ thuộc hàm .......................................................................................... 38
2.6. Bao đóng trong mô hình dữ liệu dạng khối ............................................. 39
2.7. Khóa của lƣợc đồ khối R đối với tập phụ thuộc hàm F trên R ................ 44
Kết luận .......................................................................................................... 47
CHƢƠNG 3: CHUẨN HOÁ VÀ TỰA CHUẨN HOÁ TRONG MÔ HÌNH
DỮ LIỆU DẠNG KHỐI ................................................................................. 48
3.1. Các dạng chuẩn trên lƣợc đồ khối............................................................ 48
3.2. Các dạng tựa chuẩn trên lƣợc đồ khối...................................................... 51
3.3. Chuẩn hoá và tựa chuẩn hoá trên lƣợc đồ khối và trên lƣợc đồ lát cắt.... 54
KẾT LUẬN ..................................................................................................... 62
DANH MỤC TÀI LIỆU THAM KHẢO ........................................................ 63



v

DANH MỤC KÝ HIỆU VÀ CHỮ CÁI VIẾT TẮT
Ký hiệu

Ý nghĩa

CSDL

Cơ sở dữ liệu

Dom(A) hoặc dom(A)

Miền giá trị của thuộc tính A



Suy ra



Khi và chỉ khi



Phép hợp



Phép giao




Tồn tại



Không tồn tại



Thuộc



Không thuộc



Là con(chứa trong)



Chứa



Rỗng




Với mọi



Phủ định



Kéo theo

|=

Suy diễn logic



Khác


vi

DANH MỤC CÁC BẢNG
Bảng 1.1. Biểu diễn quan hệ r ................................................................................ 5
Bảng 1.2. Biểu diễn quan hệ Hocsinh .................................................................... 5
Bảng 1.3. Biểu diễn quan hệ Sach1 ∪ Sach2 ......................................................... 7
Bảng 1.4. Biểu diễn quan hệ KH1 ∩ KH2 ............................................................. 7
Bảng 1.5. Biểu diễn quan hệ KH1 – KH2.............................................................. 8
Bảng 1.6. Biểu diễn quan hệ KH2 – KH1.............................................................. 8
Bảng 1.7. Biểu diễn quan hệ Muonsach x Sach ..................................................... 9

Bảng 1.8. Biểu diễn phép chiếu

 MaKH, HoTen, Diachi (KH) .................................... 10

Bảng 1.9. Biểu diễn phép chọn δ (Lop=12A1  DTB > 8.0) (Hocsinh) ........................... 11
Bảng 1.10. Biểu diễn phép kết nối r*s ................................................................. 12
Bảng 1.11. Biểu diễn phép chia r ÷ s................................................................... 13
Bảng 1.12. Biểu diễn khoá K ............................................................................... 19
Bảng 1.13. Biểu diễn không ở dạng chuẩn 1NF .................................................. 21
Bảng 1.14. Biểu diễn ở dạng chuẩn 1NF ............................................................. 21
Bảng 1.14. Biểu diễn HS ...................................................................................... 22
Bảng 2.1: Biểu diễn lát cắt r(R2014) ...................................................................... 28
Bảng 2.2. Biểu diễn lát cắt r(R2015), r(R2016) ........................................................ 29


vii

DANH MỤC CÁC HÌNH
Hình 2.1. Biểu diễn khối học sinh HS(R) ............................................................ 27
Hình 2.2. Biểu diễn khối nhân viên NV(R) ......................................................... 29
Hình 2.3. Biểu diễn r, s và r ∪ s ........................................................................... 32
Hình 2.4. Biểu diễn khối r, s và r ∩ s ................................................................... 33
Hình 2.5. Biểu diễn khối r, s và r - s .................................................................... 34
Hình 3.1: Lƣợc đồ khối chƣa ở dạng chuẩn 1 ...................................................... 48
Hình 3.2: Lƣợc đồ khối ở dạng chuẩn 1 .............................................................. 49


1

MỞ ĐẦU

1. Lý do chọn đề tài
Trong thời đại ngày nay, ngành công nghệ thông tin có vai trò to lớn và
đƣợc ứng dụng vào hầu hết các lĩnh vực của đời sống xã hội. Ví dụ: ngành
giáo dục, viễn thông, điện lực, y tế… Muốn quản lí tốt các đối tƣợng trong
ngành cần phải có cơ sở dữ liệu.
Để xây dựng đƣợc một hệ thống cơ sở dữ liệu tốt, ngƣời ta thƣờng sử
dụng các mô hình dữ liệu thích hợp. Một số mô hình đã đƣợc sử dụng trong
các hệ thống cơ sở dữ liệu nhƣ: Mô hình thực thể - liên kết, mô hình mạng,
mô hình phân cấp, mô hình hƣớng đối tƣợng, mô hình dữ liệu datalog và mô
hình quan hệ. Trong số các mô hình này thì mô hình quan hệ đƣợc quan tâm
hơn cả. Mô hình này đƣợc E.Codd đề xuất năm 1970. Tuy nhiên do các quan
hệ có cấu trúc tuyến tính nên mô hình này chƣa đáp ứng đƣợc đầy đủ với các
ứng dụng phức tạp, các cơ sở dữ liệu có cấu trúc phi tuyến tính, …[5].
Trong những năm gần đây, việc nghiên cứu nh m mở rộng mô hình dữ
liệu quan hệ đã đƣợc nhiều nhà khoa học quan tâm. Theo hƣớng nghiên cứu
này, một mô hình dữ liệu mới đã đƣợc đề xuất, đó là mô hình dữ liệu dạng
khối. Mô hình dữ liệu này đƣợc xem là một mở rộng của mô hình dữ liệu
quan hệ. Tuy nhiên, trong quá trình nghiên cứu về mô hình dữ liệu khối thì
việc xây dựng và phân tích mối quan hệ phụ thuộc dữ liệu đóng vai trò quan
trọng trong việc thiết kế và xây dựng cơ sở dữ liệu. Vì vậy, tôi đã chọn đề tài
“Chuẩn hoá và tựa chuẩn hoá trong mô hình dữ liệu dạng khối” nh m góp
phần hoàn thiện hơn lý thuyết về mô hình dữ liệu dạng khối.
2. Mục đích nghiên cứu
Nghiên cứu các vấn đề về chuẩn hoá và tựa chuẩn hoá trong mô hình dữ
liệu dạng khối.


2

3. Nhiệm vụ nghiên cứu

- Tìm hiểu về các mô hình dữ liệu .
- Tìm hiểu về mô hình dữ liệu dạng khối.
- Nghiên cứu về chuẩn hoá và tựa chuẩn hoá trong mô hình dữ liệu dạng
khối.
4. Đối tƣợng và phạm vi nghiên cứu
* Đối tƣợng nghiên cứu
- Chuẩn hoá và tựa chuẩn hoá trong mô hình dữ liệu dạng khối.
* Phạm vi nghiên cứu
- Trong mô hình dữ liệu dạng khối.
5. Phƣơng pháp nghiên cứu
- Phƣơng pháp tổng hợp phân tích các vấn đề có liên quan đến đề tài.
- Phƣơng pháp suy luận và chứng minh.
6. Những đóng góp của đề tài
- Tìm hiểu về các mô hình dữ liệu .
- Tìm hiểu về mô hình dữ liệu dạng khối.
- Tìm hiểu thêm một số tính chất mới về chuẩn hoá và tựa chuẩn hoá trên
lƣợc đồ khối và trên lƣợc đồ lát cắt.
7. Cấu trúc luận văn
Luận văn gồm lời mở đầu, nội dung của ba chƣơng, kết luận và tài liệu
tham khảo
Chƣơng 1: Mô hình dữ liệu quan hệ
Chƣơng này trình bày một số khái niệm cơ bản nhất trong mô hình dữ
liệu quan hệ. Làm rõ các phép toán đại số quan hệ, các khái niệm về phụ
thuộc hàm bao đóng. Ngoài ra các thuật toán tìm bao đóng của tập thuộc tính,
bài toán thành viên cũng đƣợc trình bày trong chƣơng này.
Chƣơng 2: Mô hình dữ liệu dạng khối


3


Nội dung trong chƣơng này trình bày về mô hình dữ liệu dạng khối nhƣ:
Khái niệm về khối, lát cắt của khối, các phép tính trên khối, đại số quan hệ và
các tính chất của đại số quan hệ trên khối, các phép toán về khóa, bao đóng và
phụ thuộc hàm trên khối cũng đƣợc trình bày.
Chƣơng 3: Chuẩn hoá và tựa chuẩn hoá trong mô hình dữ liệu
dạng khối
Nội dung chƣơng này giới thiệu các dạng chuẩn, tựa chuẩn trong mô
hình dữ liệu dạng khối. Trên cơ sở đó trình bày một số tính chất mới của các
dạng chuẩn hoá và tựa chuẩn hoá trên lƣợc đồ khối và lƣợc đồ lát cắt.


4

CHƢƠNG 1
MÔ HÌNH DỮ LIỆU QUAN HỆ
Nội dung chƣơng này trình bày các khái niệm cơ bản về mô hình dữ liệu
quan hệ. Mô hình này có nhiều ƣu điểm, tính độc lập cao, có cơ sở toán học
chặt chẽ… Những vấn đề này đã đƣợc tham khảo trong các tài liệu [3], [4],
[6], [7], [8].
Mô hình dữ liệu quan hệ là một mô hình đƣợc sử dụng rộng rãi trong đời
sống xã hội của mọi tổ chức, cơ quan, xí nghiệp, doanh nghiệp…. Dữ liệu
thƣờng đƣợc lƣu dƣới dạng bảng. Ta có thể xem một quan hệ nhƣ một bảng,
trong đó mỗi hàng là một bộ và mỗi cột là một thuộc tính.
1.1. Mô hình dữ liệu quan hệ
1.1.1. Thuộc tính và miền thuộc tính
Định nghĩa 1.1
- Thuộc tính là đặc trưng của đối tượng. Mỗi thuộc tính có một tên gọi
và phải thuộc về một kiểu dữ liệu nhất định.
- Tập tất cả các giá trị có thể có của thuộc tính Ai gọi là miền giá trị của
thuộc tính đó, ký hiệu: Dom(Ai) viết tắt là DAi

Ví dụ 1.1:
Đối tƣợng Học sinh có các thuộc tính nhƣ: Mã học sinh (MaHS), Họ và
tên (HoTen), Ngày sinh (NgaySinh), Địa chỉ (Diachi), Lớp (Lop).
Miền giá trị của các thuộc tính của đối tƣợng Học sinh:
Dom(MaHS) = {char(5)} = {„Hs001‟, „Hs002‟, „Hs003‟};
Dom(HoTen) = {char(30)} = {„Nguyễn Văn Bình‟, „Đỗ Bích H ng‟,
„Cao Ngọc Trinh‟};
Dom(NgaySinh) = {date} = {„08/12/1991‟, „05/12/1991‟, „03/03/1991‟};
Dom(DiaChi) = {char(20)} = {„6 Nghĩa Tân‟, „12 Lê Lợi‟, „92 Nguyễn
Trãi‟};


5

Dom(Lop) = {char(10)} = {12A1};
1.1.2. Quan hệ
Định nghĩa 1.2:
Cho U= {A1, A2, …, An} là một tập hữu hạn không rỗng các thuộc tính.
Mỗi thuộc tính Ai (i= 1, 2,…, n) có miền giá trị là Dom(Ai) viết tắt là DAi. Khi
đó r là một tập các bộ {h1, h2, …, hm} được gọi là quan hệ trên U với hj (j=1,
2, …, m) là một hàm:
DAi sao cho hj (Ai) DAi (i=1, 2, ...,n)

hj :U →

AiU
Có thể hiểu r ng một quan hệ nhƣ một bảng và trong đó mỗi hàng
(phần tử) là một bộ và mỗi cột tƣơng ứng với một thành phần gọi là thuộc
tính. Biểu diễn quan hệ r thành bảng nhƣ sau:
h1

h2
...
hm

A1
h1(A1)
h2(A1)
...
hm(A1)

A2
h1(A2)
h2(A2)
...
hm(A2)

...
...
...
...
...

An
h1(An)
h2(An)
...
hm(An)

Bảng 1.1. Biểu diễn quan hệ r
Ví dụ 1.2:

Ta có quan hệ Hocsinh
MaHS

HoTen

NgaySinh

DiaChi

Lop

Hs001 Nguyễn Văn Bình 08/12/1991 6 Nghĩa Tân

12A1

Hs002 Đỗ Bích H ng

05/12/1991 12 Lê Lợi

12A1

Hs003 Cao Ngọc Trinh

03/03/1991 92 Nguyễn Trãi 12A1

Bảng 1.2. Biểu diễn quan hệ Hocsinh
Trong đó các thuộc tính là MaHS: Mã học sinh; HoTen: Họ tên;


6


NgaySinh: Ngày sinh; DiaChi: Địa chỉ; Lop: lớp.
Bộ giá trị: Hs001, Nguyễn Văn Bình, 08/12/1991, 6 Nghĩa Tân, 12A1: là
một bộ.
Nếu có một bộ b = (b1, b2, ..., bm) ∈ r, r xác định trên U, X  U thì b(X)
(hoặc b.X) đƣợc gọi là giá trị của bộ b trên tập thuộc tính X.
1.2. Đại số quan hệ
1.2.1. Quan hệ khả hợp
Hai quan hệ r và s đƣợc gọi là khả hợp nếu nhƣ hai quan hệ này xác
định trên cùng tập thuộc tính và các thuộc tính cùng tên có cùng miền giá trị.
1.2.2. Phép hợp
Hai quan hệ r và s khả hợp, phép hợp của 2 quan hệ kí hiệu: r ∪ s là tập
tất cả các bộ thuộc r hoặc thuộc s. Ta có
r ∪ s = {t | t ∈ r hoặc t ∈ s}
Ví dụ 1.3:
Cho hai quan hệ Sach1, Sach2 nhƣ sau:
Sach1
MSach

Ten

TS01

Dế mèn phiêu lƣu kí

TS02

Hai vạn dặm dƣới biển

TS03


Sáng tạo toán học

Msach

Ten

Sach2

TS01

Dế mèn phiêu lƣu kí

TS04

Những điều kì diệu về máy tính

Khi đó phép hợp của Sach1 ∪ Sach2


7

Msach

Ten

TS01

Dế mèn phiêu lƣu kí


TS02

Hai vạn dặm dƣới biển

TS03

Sáng tạo toán học

TS04

Những điều kì diệu về máy tính

Bảng 1.3. Biểu diễn quan hệ Sach1 ∪ Sach2
1.2.3. Phép giao
Hai quan hệ r và s khả hợp, phép giao của 2 quan hệ kí hiệu: r ∩ s là tập
tất cả các bộ thuộc r và thuộc s. Ta có
r ∩ s = {t | t ∈ r và t ∈ s}
Ví dụ 1.4: Cho hai quan hệ KH1, KH2 nhƣ sau:
KH1
MaKH

HoTen

KH01

Hoàng Bình

KH02

Lê Văn Minh


KH03

Trần Nam Ninh

KH2
MaKH

HoTen

KH01

Hoàng Bình

KH04

Nguyễn Hải Sơn

Khi đó phép giao của KH1 ∩ KH2 là:
MaKH

HoTen

KH01

Hoàng Bình

Bảng 1.4. Biểu diễn quan hệ KH1 ∩ KH2



8

1.2.4. Phép trừ
Hai quan hệ r và s khả hợp, phép trừ của 2 quan hệ kí hiệu: r – s là tập tất
cả các bộ thuộc r nhƣng không thuộc s. Ta có
r – s = {t | t ∈ r và t

 s}

Ví dụ 1.5: Ta có quan hệ KH1, KH2 từ ví dụ 1.4
- Phép trừ của KH1 – KH2:
MaKH

HoTen

KH02

Lê Văn Minh

KH03

Trần Nam Ninh

Bảng 1.5. Biểu diễn quan hệ KH1 – KH2
- Phép trừ của KH2 – KH1:
MaKH

HoTen

KH04


Nguyễn Hải Sơn

Bảng 1.6. Biểu diễn quan hệ KH2 – KH1
1.2.5. Tích Đề-Các
Cho 2 quan hệ r và s, r xác định trên U1={A1, A2,..., An} và s xác
định trên U2={B1, B2,..., Bm}. Tích Đề - Các của 2 quan hệ r và s kí hiệu:
r x s là tập tất cả các bộ thuộc ghép đƣợc từ các bộ r và s. Ta có:
r x s = {t = (a1, a2, ..., an, b1, b2, ..., bm) | (a1, a2, ..., an) ∈ r và (b1, b2, ..., bm)
∈ s}
Ví dụ 1.6:
Cho 2 quan hệ Muonsach, Sach nhƣ sau:
Muonsach


9

Sothe

Masach

Ngaymuon

TV01

TO-012

07/09/2017

TV02


TO-013

12/09/2017

Sach
Tensach

Sotrang

Dế mèn phiêu lƣu kí

236

Hai vạn dặm dƣới biển

120

Tích Đề-Các của Muonsach x Sach2
Sothe

Masach

Ngaymuon

Tensach

Sotrang

TV01


TO-012

07/09/2017

Dế mèn phiêu lƣu kí

236

TV01

TO-012

07/09/2017 Hai vạn dặm dƣới biển

120

TV02

TO-013

12/09/2017

Dế mèn phiêu lƣu kí

236

TV02

TO-013


12/09/2017 Hai vạn dặm dƣới biển

120

Bảng 1.7. Biểu diễn quan hệ Muonsach x Sach
1.2.6. Phép chiếu
Phép chiếu thực chất là phép toán loại bỏ những thuộc tính không
cần thiết và giữ lại một số thuộc tính cần thiết của quan hệ.
Cho r là một quan hệ xác định trên tập thuộc tính U1= {A1, A2,...,
An}, X là tập con của U1. Phép chiếu của quan hệ r trên tập thuộc tính X.
kí hiệu:

 X(r) = {t.X | t ∈ r}

Ví dụ 1.7:
Cho quan hệ KH


10

MaKH

HoTen

MaMH

Soluong

Diachi


KH01

Hoàng Bình

MH01

5

Yên Trung

KH02

Lê Văn Minh

MH03

20

Dũng Liệt

KH03

Trần Nam Ninh

MH02

17

Tam Đa


KH04

Nguyễn Hải Sơn

MH04

2

Thu Hoà

Phép chiếu quan hệ KH trên ba thuộc tính MaKH, HoTen và Diachi
là:

 MaKH, HoTen, Diachi (KH) sẽ cho ta một quan hệ mới chỉ gồm ba thuộc

tính là MaKH, HoTen và Diachi nhƣ sau:
MaKH

HoTen

Diachi

KH01

Hoàng Bình

Yên Trung

KH02


Lê Văn Minh

Dũng Liệt

KH03

Trần Nam Ninh

Tam Đa

KH04

Nguyễn Hải Sơn

Thu Hoà

Bảng 1.8. Biểu diễn phép chiếu

 MaKH, HoTen, Diachi (KH)

1.2.7. Phép chọn
Phép chọn là phép toán lọc lấy ra một tập con các bộ của quan hệ đã cho
thoả mãn một điều kiện xác định. Điều kiện đó đƣợc gọi là điều kiện chọn
hay biểu thức chọn.
Biểu thức chọn G đƣợc định nghĩa là một tổ hợp logic của các toán
hạng, mỗi toán hạng là một phép so sánh đơn giản giữa hai biến là hai thuộc
tính hoặc giữa một biến là một thuộc tính và một giá trị h ng. Biểu thức chọn
G cho giá trị đúng hoặc sai đối với mỗi bộ đã cho của quan hệ khi kiểm tra
riêng bộ đó.

Các phép toán so sánh và logic trong biểu thức G: >, <, =,≥, ≤, ≠,  ,  ,
.


11

Cho quan hệ r và G là một biểu thức logic trên các thuộc tính của r. Phép
chọn trên quan hệ r với biểu thức chọn G kí hiệu: δG(r) là tập tất cả các bộ của
r thoả mãn G. Ta có δG(r) = {t | t ∈ r và G(t)}
Ví dụ 1.8:
Cho quan hệ Hocsinh
TT

MaHS

HoTen

Lop

DTB

1

HS01

Nguyễn An

12A1

8.6


2

HS02

Phạm Kim Anh

12A2

7.5

3

HS03

Nguyễn Xuân Bình

12A3

8.7

4

HS04

Trƣơng Hồng Hà

12A1

9.1


5

HS05

Hoàng Xuân Hải

12A1

7.3

Tìm học sinh lớp 12A1 và có điểm trung bình lớn hơn 8.0?
Khi đó phép chọn học sinh lớp 12A1 và có điểm trung bình >8.0 của
quan hệ Hocsinh đƣợc biểu diễn b ng công thức sau:
δ (Lop=12A1  DTB > 8.0) (Hocsinh)
ta đƣợc quan hệ sau:
TT

MaHS

HoTen

Lop

DTB

1

HS01


Nguyễn An

12A1

8.6

4

HS04

Trƣơng Hồng Hà

12A1

9.1

Bảng 1.9. Biểu diễn phép chọn δ (Lop=12A1  DTB > 8.0) (Hocsinh)
1.2.8. Phép kết nối
Phép kết nối là một phép ghép các bộ giá trị của quan hệ mà đi kèm là có
điều kiện.
Cho 2 quan hệ r(U) và s(V). Đặt X= U ∩ V. Phép kết nối hai quan hệ
r(U) và s(V), kí hiệu r*s, cho ta quan hệ gồm các bộ đƣợc gán từ các bộ u của


12

quan hệ R với mỗi bộ v của quan hệ S (sao cho các giá trị trên miền thuộc tính
chung X của hai bộ này giống nhau).
P(UV) = r*s={u*v | u ∈ r, v ∈ s, u.X=v.X}.
Nếu X= U ∩ V = ∅, thì r*s sẽ cho ta tích Đề - Các mà trong đó mỗi bộ

của quan hệ r sẽ đƣợc ghép với mỗi bộ của quan hệ s .
Ví dụ 1.9:
Cho quan hệ r
A1

A2

B1

Aa

Ca

Ba

Ab

Cb

Bb

Ac

Ca

Bd

Ad

Cd


Ba

và quan hệ s
B1

B2

Ba

Aaa

Bb

Abb

Khi đó phép kết nối của 2 quan hệ r*s sẽ cho kết quả là:
A1

A2

B1

B2

Aa

Ca

Ba


Aaa

Ab

Cb

Bb

Abb

Ad

Cd

Ba

Aaa

Bảng 1.10. Biểu diễn phép kết nối r*s
1.2.9. Phép chia
Cho 2 quan hệ r(U) và s(V) với V  U. Phép chia của quan hệ r cho


13

quan hệ s kí hiệu là r÷s là tập tất cả các bộ t trên U\V sao cho với mọi bộ v ∈
s thì khi ghép bộ t với bộ v ta đƣợc một bộ thuộc r. Ta có
r÷s = {t | ∀ v ∈ s, (t,v) ∈ r}
Ví dụ 1.10: Cho quan hệ r và quan hệ s:

A

B

C

D

A

B

A1

B1

C1

D2

A1

B1

A2

B2

C1


D2

A2

B2

A3

B3

C1

D2

A3

B3

A1

B2

C1

D2

A2

B2


C3

D2

A3

B3

C2

D2

Khi đó phép chia 2 quan hệ r ÷ s là:
C

D

C1

D2

Bảng 1.11. Biểu diễn phép chia r ÷ s
1.3. Phụ thuộc hàm
1.3.1. Định nghĩa và tính chất phụ thuộc hàm
Định nghĩa 1.3:
Cho một tập hữu hạn các thuộc tính U = (A1, A2,..., An), r là một quan hệ
trên U, X, Y  U. Khi đó: X →Y (đọc là X xác định Y hay Y phụ thuộc hàm
vào X nếu với mọi bộ t1, t2 ∈ r mà t1(X) = t2(X) thì t1(Y) = t2(Y)).
Điều đó có nghĩa là các giá trị của thành phần Y của một bộ trong R phụ
thuộc vào, hoặc đƣợc xác định bởi, các giá trị của thành phần X. Nói cách

khác, các giá trị của thành phần X của một bộ xác định một cách duy nhất các
giá trị của thành phần Y.


14

Khi xét đến mối quan hệ dữ liệu trong CSDL, quan hệ một trong những
yếu tố quan trọng đƣợc xét đến là sự phụ thuộc giữa các thuộc tính này với
thuộc tính khác. Từ đó có thể xây dựng những ràng buộc dữ liệu cũng nhƣ
loại bỏ đi những dƣ thừa dữ liệu trong một CSDL.
Các tính chất của phụ thuộc hàm

Cho lƣợc đồ quan hệ R xác định trên tập thuộc tính U={Al, A2, ...,
An}, cho X, Y, Z, W  U, ta có một số tính chất cơ bản của các phụ thuộc
hàm nhƣ sau:
TC1 : Tính phản xạ
Nếu Y  X thì X → Y.
TC2 : Tính mở rộng hai vế
Nếu X → Y thì XW → YW.
TC3 : Tính chất bắc cầu
Nếu X → Y, Y → Z thì X → Z.
TC4 : Tính tựa bắc cầu
Nếu X → Y, YZ → W thì XZ → W.
TC5 : Tính cộng đầy đủ
Nếu X → Y, Z → W thì XZ → YW.
TC6 : Tính mở rộng vế trái
Nếu X → Y thì XZ → Y.
TC7 : Tính cộng ở vế phải
Nếu X → Y, X → Z thì X → YZ.
TC8 : Tính bộ phận ở vế phải

Nếu X → YZ thì X → Y.
TC9 : Tính tích luỹ
Nếu X → YZ, Z → WV thì X → YZW.


15

1.3.2. Hệ tiên đề Armstrong
Gọi F là tập tất cả các phụ thuộc hàm đối với lƣợc đồ quan hệ r(U) và X
→ Y là một phụ thuộc hàm với X, Y  U, ta nói r ng X → Y đƣợc suy diễn
logic từ F nếu mọi quan hệ r trên U đều thỏa mãn các phụ thuộc hàm của F thì
cũng thỏa X → Y. Tập quy tắc của hệ tiên đề đƣợc Armstrong đề xuất vào
năm 1974, đƣợc gọi là hệ tiên đề Armstrong.
Hệ tiên đề Armstrong:
Cho lƣợc đồ quan hệ R(U) với U={ A1, A2,..., An }. Các tập thuộc tính
X, Y, Z  U khi đó ta có các tiên đề Amstrong nhƣ sau:
- Tính phản xạ: Nếu Y  X thì X → Y.
- Tính tăng trƣởng: Nếu X → Y thì XV → YV.
- Tính bắc cầu: Nếu X → Y, Y → Z thì X → Z.
Hệ quả:
- Luật hợp: Nếu X → Y và X → Z thì X → YZ
- Luật tách: Nếu X → Y và Z  Y thì X → Z
- Luật tựa bắc cầu: Nếu X→ Y và VY → Z thì VX → Z
Hệ tiên đề Armstrong là đầy đủ, có nghĩa là nếu F là tập phụ thuộc hàm
đúng trên quan hệ R và F: X → Y là một phụ thuộc hàm đƣợc suy dẫn từ F
nhờ hệ tiên đề Armstrong thì F đúng trên R.
1.4. Bao đóng
Định nghĩa 1.4:
Cho lược đồ quan hệ R = { A1, A2,… An}. iả s


là tập phụ thuộc hàm

trên R.
X là tập con của tập thuộc tính R.
ao đóng của tập thuộc tính X đối với , ký hiệu X+ (hoặc XF+ để ch
bao đóng lấy theo tập ), là tập tất cả các thuộc tính A của R mà X → A được
suy d n t tập . Vậy X+ là tập:


16

X+ = {A: A ∈

v X →A ∈ F+ }

Nhƣ vậy bao đóng X+ của X đƣợc định nghĩa qua tập phụ thuộc hàm F,
vì thế đôi khi ta ký hiệu X+F. Tuy nhiên khi không có một tập phụ thuộc hàm
nào khác ta hiểu bao đóng X+F đƣợc tính qua F nên ta viết đơn giản X+[6].
Ví dụ 1.11:
Giả sử R = { A, B, C, D, E, G}.
F= { A → C, A → EG, B → D, G → E}.
X = { A, B}, Y = { A, B, C, D, E, G}.
Khi đó ta sẽ có: X+ = { A, B, C, D, E, G}
Y+ = { C, G, D, E}.
Tƣơng tự nhƣ tập bao đóng của tập phụ thuộc hàm F+ tập bao đóng X+
cũng chứa các phần tử của tập X, tức là X  X+[6].
1.4.1. Các tính chất của bao đóng
Cho lƣợc đồ quan hệ α = (U, F). Khi đó X, Y  U ta có:
- Tính phản xạ: X  X+
- Tính đồng biến: Nếu X  Y thì X+  Y+

- Tính lũy đẳng : (X+)+ = X+
Ta dễ dàng chứng minh đƣợc một số tính chất sau từ 3 tính chất trên:
- (XY)+  X+Y+
- (X+Y)+ = (XY)+ = (XY+)+ = (X+Y+)+
- X → Y Y+  X+
- X → Y  X+ → X
- X → X+ và X+ → X
- X+ = Y+  X → Y và Y → X
1.4.2. Thuật toán tìm bao đóng của tập thuộc tính
Thuật toán 1.1
INPUT: Lƣợc đồ quan hệ R


×