1. Trang chủ
  2. » Luận Văn - Báo Cáo

Vai trò của chuẩn hóa dữ liệu trong thiết kế csdl

84 1 0

Đ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

Thông tin cơ bản

Tiêu đề Vai Trò Của Chuẩn Hóa Dữ Liệu Trong Thiết Kế CSDL
Người hướng dẫn TS. Trần Thị Song Minh
Trường học Trường Đại Học
Thể loại Đề Tài
Định dạng
Số trang 84
Dung lượng 1,74 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Đặc biệt không thể không kể đến là sựphát triển như vũ bão của thế hệ máy tính cá nhân và các môi trường tính toánphân tán trong những thập kỷ cuối cùng của thế kỷ trước, đã tạo một bước

Trang 1

LỜI MỞ ĐẦU

Mô hình dữ liệu quan hệ được E.Codd đề xuất năm 1970 đã đánh dấumột mốc phát triển quan trọng về cơ sở lý thuyết cũng như khả năng ứngdụng của các hệ cơ sở dữ liệu ( CSDL ) Cùng với sự bùng nổ của nhu cầuxây dựng các hệ thống thông tin, trước hết là các hệ thống thông tin quản lý,kéo theo sự tham gia vào của các hãng máy tính lớn với sự xuất hiện của các

hệ quản trị cơ sở dữ liệu danh tiếng như: DB2, Sybase Oracle trên thịtrường công nghệ thông tin thế giới Đặc biệt không thể không kể đến là sựphát triển như vũ bão của thế hệ máy tính cá nhân và các môi trường tính toánphân tán trong những thập kỷ cuối cùng của thế kỷ trước, đã tạo một bướcchuyển biến hết sức mạnh mẽ về cách tiếp cận cũng như về triết lý triển khaicác hệ CSDL, với sự xuất hiện của các hệ quản trị CSDL mới, gọn nhẹ vàthân thiện với người sử dụng hơn như : Foxbase FoxPro SQL server Thuậtngữ CSDL trở nên hết sức quen thuộc cả với các nhà quản lý, các nhân viênvăn phòng và ở bất cứ doanh nghiệp, nào khi muốn tiến hành tin học hoáhoạt động quản lý của doanh nghiệp mình đều bắt đầu từ việc thiết kế hệ cơ

sở dữ liệu khi các nguồn lực khác đã sẵn sàng Và một trong những vấn đềquan trọng nhất của việc thiết kế hệ cơ sở dữ liệu là vấn đề chuẩn hoá cơ sở

dữ liệu Cơ sở dữ liệu được ví như “ xương sống ” của “ cơ thể ” hệ thốngthông tin quản lý trong doanh nghiệp, muốn có một “ cơ thể ” chắc chắn, bềnvững thì chúng ta phải có một “ xương sống ” vững chắc, đầy đủ

Vấn đề chuẩn hoá dữ liệu trong thiết kế cơ sở dữ liệu là rất rộng lớn,nghiên cứu quá trình chuẩn hoá trên một lược đồ quan hệ là một mặt của vấn

đề này Từ việc chuấn hoá dữ liệu chúng ta có thể đưa ra được một lược đồquan hệ ngắn gọn, đây sẽ là cơ sở căn bản phục vụ cho việc thiết kế dữ liệu

Trang 2

của chuẩn hoá dữ liệu trong thiết kế cơ sở dữ liệu” Em xin chân thành cám

ơn sự hướng dẫn và giúp đỡ của TS Trần Thị Song Minh và các thầy cô giáokhác trong khoa đã giúp em hoàn thành đề tài này Vì sự hiểu biết và kiếnthức của em còn nhiều hạn chế, nên bài viết của em sẽ còn nhiều thiếu sót, emrất mong muốn nhận được sự góp ý của cô giáo để em hoàn thành bài viết này

và có được sự hiểu biết đầy đủ hơn về vấn đề này

Em xin chân thành cám ơn!

NỘI DUNG

Trong nhiều năm, công nghệ tính toán và thông tin phát triển từ những

hệ thống lớn, đắt tiền, độc quyền đến các hệ thống mở mạnh và không đắttiền Sự phát triển này mang lại lợi ích to lớn cho người dùng cuối cùng bởi

sự phát triển của các gói ứng dụng số như xử lý văn bản, bảng tính điện tử,văn phòng xuất bản, hệ quản lý cơ sở dữ liệu, máy tính trợ giúp công nghệphần mềm Trước khi máy tính hoá cơ sở dữ liệu được giới thiệu, dữ liệu

được lưu trữ theo kiểu điện tử thành nhiều tập tin riêng biệt sử dụng hệ tập

tin ( từ đây về sau ta gọi hệ tập tin theo lối cũ) cũ Những tập tin này được

xử lý bằng ngôn ngữ thế hệ thứ ba như : COBOL, FORTRAN, PASCAL vàngay cả BASIC để tạo ra các giải pháp cho các vấn đề của doanh nghiệp Mỗiứng dụng chẳng bạn như hệ tính lương, hệ kho, hay hệ thống kế toán sẽ cómột tập hợp các tập tin riêng chứa dữ liệu riêng Tuy nhiên, khi quy mô kinhdoanh của các tổ chức và nhu cầu xử lý thao tác dữ liệu với các mục đíchkhác nhau theo các quy cách khác nhau tăng lên, một số vấn đề nghiêm trọng

sẽ có thể nảy sinh Các hệ thống trên cơ sở tệp được phát triển với các ứng

Trang 3

- Có sự dư thừa dữ liệu rất lớn qua việc trùng lắp các tập tin trong cácứng dụng khác nhau Điều này tạo ra những vấn đề như : dữ liệu thiếu nhấtquán, không gian đĩa bị lãng phí, thời gian bảo trì và lưu phòng hệ các tập tingia tăng, vấn đề về quản trị như không chú trọng bảo mật và tổ chức dữ liệuthiết thống nhất Chúng ta thử xem xét một ví dụ thường gặp trong bất kỳ một

tổ chức nào đó là hệ quản trị nguồn nhân lực, hệ này gồm ba hệ chính :

+ Hệ lương : hệ này duy trì ngày công và lương cho tất cả nhân viên trong tổ

chức

+ Hệ nhân sự : hệ này duy trì lý lịch cá nhân, dữ liệu về tổ chức, công việc

đào tạo và vị trí thăng tiến

+ Hệ hưu : hệ này quản trị các quy tắc liên quan đến nghỉ hưu, loại nghỉ hưu,

chi tiết hưu của từng nhân viên

Vấn đề phức tạp là hệ lương thông thường được quản lý bởi phòng tàichính, hệ nhân sự và hệ hưu được quản lý bởi phòng tổ chức, có nhiều dữ liệu

về nhân viên là chung cho cả ba hệ - những hệ này thường thực hiện và sửdụng riêng biệt và chúng tạo sự trùng dữ liệu nhân viên mà chúng dùng

Người sử dụng ít có khả năng khai thác dữ liệu trực tiếp

Trang 4

của dữ liệu lưu trữ theo lối cũ, tạo sự thống nhất các hệ dữ liệu vào một hệ cơ

sở dữ liệu chính, khắc phục các nhược điểm của hệ thống thông tin cũ

A Thiết kế cơ sở dữ liệu - Lược đồ quan hệ :

I - Một số khái niệm chung:

Trang 5

Như vậy, Cơ sở dữ liệu là một bộ sưu tập các dữ liệu tác nghiệp đượclưu trữ lại và được các hệ ứng dụng của một tổ chức nào đó.

2 Hệ quản trị cơ sở dữ liệu và hệ cơ sở dữ liệu:

2.1 Hệ quản trị cơ sở dữ liệu: ( DataBase Management System - DBMS): là

một tập các phần mềm quản lý CSDL và cung cấp các dịch vụ xử lý CSDLcho những người phát triển ứng dụng và người dung cuối, DBMS cung cấp

Trang 6

CSDL logic

- Dựa vào các tổ chức dữ liệu, DBMS được chia thành năm loại:

+ Loại phân cấp như hệ IMS của IBM+ Loại mạng như IDMS của Cullinet Software+ Loại tập tin đảo như ADABAS của Software AG

+ Loại quan hệ như ORACLE của Oracle, DB2 của IBM, Access củaMicrosoft Access

+ Loại đối tượng, là một tiếp cận khá mới trong thiết kế DBMS và việc sửdụng loại này sớm trở nên phổ biến

- DBMS có vai trò quan trọng trong các hệ thống lập trình hiện đã có mặt trêncác máy PC, Mainframe, cũng như các hệ thống phần mềm khác, chẳng hạnnhư trình biên dịch, hệ điều hành, các nguyên lý của DBMS cũng xuất hiện vàđược nghiên cứu nhằm giúp chúng ta nắm vững các nguyên lý về mặt lýthuyết để sử dụng và cài đặt DBMS một cách hiệu quả nhất Hiện tại, loạiDBMS chính được sử dụng trong công nghệ là loại DBMS quan hệ( RDBMS), loại này đã chiếm lĩnh trong công nghệ trên 10-15 năm cuối cùngkhi đánh bật loại DBMS phân cấp và gần đây là DBMS mạng

2.2.Hệ cơ sở dữ liệu: là một hệ thống gồm 4 thành phần:

- Cơ sở dữ liệu hợp nhất: cơ sở dữ liệu của hệ có 2 tính chất là tối thiểu

hoá dư thừa và được chia sẻ

- Những người sử dụng: người sử dụng của hệ là bất kỳ một con người

nào có nhu cầu truy nhập vào CSDL, có nghĩa là người sử dụng bao gồm tất

Trang 7

cả những người sử dụng cuối, những người viết các chương trình ứng dụng vànhững người điều khiển toàn bộ hệ thống hay còn gọi là người quản trị cơ sở

dữ liệu

- Phần mềm hệ quản trị cơ sở dữ liệu:

- Phần cứng: bao gồm các thiết bị nhớ thứ cấp được sử dụng để lưu trữ

dữ liệu

* Theo nhóm nghiên cứu hệ quản trị cơ sở dữ liệu ANSI/SPARC, kiến trúc

một CSDL được chia thành 3 mức khác nhau:

+ Về nguyên tắc, DSL là kết hợp của ít nhất 2 ngôn ngữ:

~ Ngôn ngữ định nghĩa dữ liệu: ( Data Definition Language – DDL):

dùng để định nghĩa hoặc khai báo các đối tượng của CSDL

~ Ngôn ngữ thao tác dữ liệu: ( Data Manipulation Language –

DML):dùng để hỗ trợ việc thao tác hoặc xử lý các đối tượng của cơ sở dữ liệu

- Mức khái niệm:

Trang 8

sử dụng, bao gồm sự biểu diễn trừu tượng của tổng thể toàn bộ CSDL

+ Lược đồ khái niệm được thể hiện bằng một ngôn ngữ định nghĩa dữ liệukhác Đó là ngôn ngữ định nghĩa dữ liệu khái niệm ( Conceptual DDL)

- Mức trong ( còn gọi là mức vật lý):

+ Mức trong rất gần với cách lưu trữ trong bộ nhớ máy tính

+ CSDL vật lý là các tệp dữ liệu theo một cấu trúc nào đó được lưu trên thiết

bị nhớ ngoài

+ Lược đồ trong không chỉ định nghĩa các kiểu bản ghi được lưu trữ mà cònchỉ định các chỉ mục, cách biểu diễn trường được lưu trữ, trật tự vật lý của cácbản ghi được lưu trữ

+ Lược đồ trong được thể hiện bằng một ngôn ngữ định nghĩa dữ liệu khác –

đó là ngôn ngữ định nghĩa dữ liệu mức trong ( Internal DDL)

Trang 9

* Lược đồ ngoài A

(Exernal Scherma A)

Người sử dụng A1 Người sử dụng A2 Người sử dụng B1

Ngôn ngữ Ngôn ngữ Ngôn ngữ

Không gian làm việc Không gian làm việc Không gian làm việc

Mô hình ngoài A ( Khung nhìn ) (External Model A)

Mô hình dữ liệu ( Data Model ) (Conceptual Model )

Mô hình khái niệm Ánh xạ giữa mô hình ngoài A và mô hình khái niệm Ánh xạ giữa mô hình ngoài B và mô hình khái niệm

Ánh xạ giữa mô hình khái niệm và mô hình trong

Mô hình trong ( Internal model ) ( Cơ sở dữ liệu được lưu trữ)

* Lược đồ ngoài B

(Exernal Scherma B)

* Lược đồ khái niệm

* Lược đồ trong

( Internal schema) ( Storage structure definition) Người quản trị hệ thống ( Database Administrator ) xây dựng và bảo trì các lược đồ và các ánh xạ

Kiến trúc một hệ thống cơ sở dữ liệu

Trang 10

1 0

3.1 Các hệ cơ sở dữ liệu tập trung: Với một hệ cơ sở dữ liệu tập trung, tập

tất cả các dữ liệu được định vị tại một trạm đơn lẻ Những người sử dụng tạicác trạm từ xa, có thể truy nhập cơ sở dữ liệu thông qua các công cụ truyềnthông dữ liệu

3.1.1 Hệ cơ sở dữ liệu cá nhân: là một kiểu hệ cơ sở dữ liệu rất quen thuộc.

Hệ cơ sở dữ liệu cá nhân thường có một người sử dụng đơn lẻ : có thể vừathiết kế , tạo lập cơ sở dữ liệu, vừa cập nhật dữ liệu và bảo trì, lập báo cáo vàhiển thị báo cáo Hệ cơ sở dữ liệu này thường hỗ trợ một ứng dụng hay một sốgiới hạn các ứng dụng đơn lẻ Việc phát triển và sử dụng các hệ cơ sở dữ liệu

cá nhân là khá đơn giản và dễ dàng

Trang 11

1 1

- Ứng dụng: quản lý thanh toán, kiểm kê hang hoá, quản lý khách hàng…

- Nhược điểm: Người sử dụng có nguy cơ chịu nhiều rủi ro trong việc tổ chức

dữ liệu một cách độc lập, khó có thể được chia sẻ cho nhiều ứng dụng khácnhau

3.1.2 Hệ cơ sở dữ liệu trung tâm: Dữ liệu mà hầu hết các ứng dụng có thể

truy nhập được lưu trữ trên một máy tính trung tâm, người sử dụng có thể truynhập cơ sở dữ liệu này từ xa thông qua các thiết bị đầu cuối, các móc nốitruyền thông dữ liệu Các hệ cơ sở dữ liệu trung tâm thường lưu trữ các cơ sở

dữ liệu tích hợp rất lớn, được nhiều người sử dụng truy nhập

- Ứng dụng: các hệ thống booking, các hệ thống thông tin của các cơ quan tài

chính và các công ty phát triển nhanh…

Computer ServerComputer

Trang 12

1 2

các tính toán theo một nhóm công việc, có nghĩa là việc sử dụng các tàinguyên tính toán để hỗ trợ quyết định và các ứng dụng khác bởi một nhómngười sử dụng Một vài mạng có thể móc nối với nhau sao cho các nhómcông việc khác nhau có thể chia sẻ công việc

Trang 13

1 3

3.2 Các hệ cơ sở dữ liệu phân tán : Là một cơ sở dữ liệu logic đơn lẻ mà

được trải dài ra về mặt vật lý trên nhiều máy tính ở nhiều vị trí khác nhau Cóhai kiểu trung chung nhất của các hệ cơ sở dữ liệu phân tán là : hệ cơ sở dữliệu phân tán thuần nhất và hệ cơ sở dữ liệu phân tán không thuần nhất

Các hệ cơ sở dữ liệu được thiết kế và xây dựng để lưu trữ tất cả các dữliệu của một tổ chức cụ thể Việc hợp nhất tất cả dữ liệu lại cho phép tổ chức

có thể quản lý tập trung và quản lý một cách có hệ thống Mặt khác, cơ sở dữliệu hợp nhất được tạo lập cho phép giảm dư thừa và tránh tính không nhấtquán trong dữ liệu, đảm bảo sự tuân thủ các tiêu chuẩn thống nhất và cânbằng các yêu cầu đối lập trong tổ chức

Trang 14

1 4

4.1 Các đối tượng của dữ liệu quan hệ :

4.1.1 Khái niệm toán học của mô hình quan hệ :

Trang 15

1 5

Quan hệ hiểu theo nghĩa lý thuyết tập hợp, đó là tập con của tích Đề - Các

của các miền :

+ Miền ( Domain) : là một tập các giá trị

+ Tích Đề - Các của n miền :D1* D2* *Dn là tập tất cả n bộ( v1,v2, ,vn) sao cho vi ¿ Di với i = 1,2,…,n

- Quan hệ ( relation) là một tập con của tích Đề - Các của một hoặc nhiều

miền

+ Mỗi quan hệ có thể biểu diễn thành các bảng

+ Mỗi hàng của quan hệ gọi là một bộ ( tuples) : số lượng các bộ trongmột quan hệ được gọi là Cardinality

+ Quan hệ là tập con của tích Đề - các D1* D2*…*Dn được gọi là quan

hệ n ngôi Khi đó mỗi bộ quan hệ sẽ có n thành phần ( n cột)

- Miền : là tập hợp được đặt tên của các giá trị vô hướng có cùng kiểu Nói

chính xác hơn, mỗi thuộc tính cần phải được định nghĩa trên đúng một miền

cơ bản với ý nghĩa giá trị của thuộc tính đó phải lấy ra từ miền tương ứng đó

Trang 16

1 6

( Attributes)

+ Số lượng các thuộc tính trong một quan hệ được gọi là ngôi

+ Sự khác nhau giữa miền và thuộc tính là : Một thuộc tính biểu thịcách sử dụng một miền trong một quan hệ

4.1.2 Tính toàn vẹn dữ liệu quan hệ :

4.1.2.1 Khoá :

* Khoá chính ( Primary key) : Khoá chính là một thuộc tính hoặc là một kết

hợp các thuộc tính cho phép nhận diện duy nhất và tối thiểu một thực thểriêng biệt nào đó

* Khoá ứng cử ( Candidate key) : Khoá ứng cử là một thuộc tính hay kết hợp

các thuộc tính có tính chất như khoá chính

* Khoá ngoại lai ( Foreign key): Một thuộc tính của quan hệ R1 được gọi là

một khoá ngoại lai nếu nó không phải là khoá chính của quan hệ R1 nhưngcác giá trị của nó là các giá trị của khoá chính trong một quan hệ R2 nào đó( quan hệ R1 và R2 không nhất thiết phải khác nhau)

* Khoá phụ ( Secondary key): là khoá dùng để sắp xếp hoặc tìm kiếm

4.1.2.2 Các quy tắc toàn vẹn dữ liệu trong mô hình quan hệ:

* Quy tắc toàn vẹn thực thể ( Entity Integrity – EI ): Thuộc tính nào dùng

làm khoá chính trên một bảng dữ liệu không bao giờ được rỗng ( null)

Trang 17

1 7

* Toàn vẹn quy chiếu ( Referential Integrity – RI ): Nếu một bảng dữ liệu bao

gồm một khoá ngoại lai khớp với một khoá chính trên một bảng dữ liệu T nào

đó, thì mỗi giá trị của khoá ngoại lai phải hoặc:

- Bằng giá trị của khoá chính trên một hàng nào đó của bảng dữ liệu T

- Hoàn toàn rỗng

II Lược đồ quan hệ:

Lược đồ quan hệ:

Ngoài việc phân chia mức trừu tượng, chúng ta còn một các hiểu khác

về cơ sở dữ liệu Khi thiết kế, chúng ta quan tâm đến những hoạch định (plan)trên cơ sở dữ liệu, nhưng khi sử dụng chúng,

Mô hình cơ sở dữ liệu quan hệ là một mô hình được sử dụng rộng rãitrong đời sống xã hội của mọi tổ chức, cơ quan, xí nghiệp, doanh nghiệp, nơinào cần quản lý và xử lý các thông tin Ta xét thí dụ minh hoạ:

Trang 18

1 8

VD1: Xét hồ sơ cán bộ của một cơ quan:

TT

MaC

B

( Thực thể là:TT: Thứ tự, MaCB: Mã CB, NS: Ngày sinh, Ten: Tên,Trinhdo:Trình độ, Que: Quê, GT: Giới tính, Luong: Lương )

VD2: Xét sổ theo dõi khách của một khách sạn:

Trang 19

1 9

( Thực thể là: MK: Mã khách, Ngayden: Ngày đến, Ngaydi: Ngày đi,Sophong: số phòng, Songuoi: Số người, Tien: Tiền )

Trong hai ví dụ trên, để quản lý các mảng thông tin ( dữ liệu) khácnhau, nhưng cả hai đều có chung một đặc thù: Dữ liệu được mô tả dưới dạngbảng, mỗi bảng có một dòng đầu là dòng thuộc tính, mỗi thuộc tính có mộtmiền giá trị của nó Các mảng dữ liệu được mô tả dưới dạng bảng như vậy sẽđược gọi là mô hình CSDL quan hệ

Lược đồ quan hệ: Lược đồ quan hệ là sự trừu tượng hoá của quan hệ, một sự

trừu tượng hoá ở mức độ cấu trúc của một bảng 2 chiều Khi nói tới lược đồquan hệ tức là đề cập tới cấu trcú tổng quát của một quan hệ; Khi đề cập tớiquan hệ thì điều đó được hiểu rằng đó là một bảng có cấu trúc cụ thể hoặcmột định nghĩa cụ thể trên một lược đồ quan hệ với các bộ giá trị của nó

Như vậy, tập tất cả các thuộc tính cần quản lý của một đối tượng cùng

với mối liên hệ giữa chúng được gọi là lược đồ quan hệ.Lược đồ quan hệ Q

với tập thuộc tính { A1, A2,…,An } được viết là Q ( A1 ,A2,…,An) Tập cácthuộc tính của Q được ký hiệu là Q+ Chẳng hạn lược đồ quan hệ sinh viên(đặt tên là Sv) với các thuộc tính như trên là: Sv ( MaSV, HoSV, TenSV,NgaySinh, MaLop, HocBong ) Thường thì khi thành lập một lược đồ, người

thiết kế luông gắn cho nó một ý nghĩa nhất định, ý nghĩa đó gọi là tân từ của lược đồ quan hệ đó Dựa vào tân từ người ta xác định được tập thuộc tính

khoá của lược đồ quan hệ ( khái niệm khoá sẽ được trình bày ở phần sau) Khi

phát biểu tân từ cho một lược đồ quan hệ, người thiết kế cần phải mô tả đầy

đủ ý nghĩa để người khác tránh hiểu nhầm

2 Dư thừa dữ liệu và các dị thường cập nhật:

Mục đích chính của thiết kế CSDL quan hệ là nhóm các thuộc tính vàocác bảng sao cho giảm được nhiều nhất sự dư thừa dữ liệu và bởi vậy giảm

Trang 20

2 0

hiểu thêm về một số vấn đề nảy sinh khi dư thừa dữ liệu:

VD3: Để lưu trữ thông tin về các nhân viên trong một tổ chức (Chẳng hạn

một công ty) với nhiều phòng (ban), xét hai phương án khác nhau về sử dụngcác lược đồ:

Phương án 1: Dùng một lược đồ: NHANVIEN_PHONG

NHANVIEN_PHONG(MaNV , HoTen, DiaChiNV, CongViec, MaPhong,DiaChiPhong, DThoai)

Phương án 2: Dùng hai lược đồ: NHAN_VIEN và PHONG

NHAN_VIEN(MaNV , HoTen, DiaChiNV, ChucVu, MaPhong)

PHONG (MaPhong, DiaChiPhong, DThoai)

Ở phương án 1, trong quan hệ NHANVIEN_PHONG, dễ nhận thấy có một

kiểu dư thừa dữ liệu: Thông tin chi tiết về một phòng được lặp đi lặp lại trong

tất cả các bộ nói về nhân viên của phòng này Trong khi đó, với phương án 2,

thông tin chi tiết về mỗi phòng chỉ được thể hiện trong một bộ của quan hệPHONG và trong quan hệ NHAN_VIEN, chỉ có mã phòng là lặp lại với một

số bộ Đối với các quan hệ dư thừa dữ liệu, có một số vấn đề nảy sinh đượcgọi là các dị thường cập nhật (them, xoá, sửa bộ) Chúng ta xem xét các dịthường đó với thí dụ minh hoạ các quan hệ dưới đây:

Quan hệ PHÒNG

Trang 21

2 1

1234 Nguyễn Thị Hoài Tứ Kỳ-H.Dương Nhân Viên 5

9876 Nguyễn Thị Hạnh Vĩnh Yên-V.Phúc KT.Trưởng 4

6688 Nguyễn Thị Hồng Hoà Bình-Hoà Bình Nhân Viên 5

Trang 22

1234 Nguyễn Thị Hoài Tứ Kỳ-H.Dương Nhân Viên 5 23 Lê Duẩn 47122

3344 Phạm Thị Hằng Ý Yên – N Định T Phòng 5 23 Lê Duẩn 47122

9876 Nguyễn Thị Hạnh Vĩnh Yên-V.Phúc KT.Trưởng 4 11 Đội Cấn 47342

6688 Nguyễn Thị Hồng Hoà Bình-Hoà Nhân Viên 5 23 Lê Duẩn 47122

Trang 23

4534 Vũ Phương Thuỳ Tam Nông-Phú

Thọ

9879 Phan Bích Ngọc V.Tường-V.Phúc Nhân Viên 4 11 Đội Cấn 47342

8866 Trần Quang Huy Tam Nông-Phú Thọ Giám Đốc 1 5 Hồ Giám 365281

Trang 24

.1 Dị thường thêm bộ (Insertion Anomalies):

Có 2 loại: Xét tiếp ví dụ 3:

- Khi thêm một nhân viên mới vào bảng NHÂNVIÊN_PHÒNG, thông tin chitiết về phòng quản lý nhân viên này không được mâu thuẫn với các bộ khác

đã có trong bảng nói về các nhân viên cùng phòng đó Chẳng hạn, nếu thêm

một nhân viên mới có mãphòng là 1 thì tất cả các bộ mới thêm phải có ĐịaChỉPhòng là “ 9 Đại La” và ĐThoại là 8699107 Nếu điều kiện này

không được thoả mãn thì tính nhất quán của hệ sẽ bị phá vỡ Trong trườnghợp dùng hai bảng NHÂN_VIÊN, PHÒNG, thêm một nhân viên mới vàobảng NHÂN_VIÊN không buộc chúng ta phải quan tâm đến điều kiện nhấtquán nói trên

- Khi cần thêm chi tiết về một phòng mới, nhưng phòng này chưa có nhânviên nào trong quan hệ NHÂNVIÊN_PHÒNG bộ mới đó phải để trống (Null)

ở các thuộc tính về nhân viên Tuy nhiên điều đó là không thể chấp nhậnđược, ít nhất thì thuộc tính MãNV là khóa chính của quan hệ không cho phépnhận giá trị Null Trường hợp dùng quan hệ NHÂN_VIÊN và PHÒNG, đơngiản là ta chỉ việc thêm một bộ mới cho quan hệ PHÒNG

2.2 Dị thường xoá bộ ( Deletion Anomalies):

- Nếu chúng ta xoá một bộ nói về nhân viên duy nhất của một phòng nào đótrong NHÂNVIÊN_PHÒNG thì những thông tin chi tiết về phòng này cũng bịmất luôn không còn trong CSDL nữa Chẳng hạn, khi xoá đi ‘ Trần QuangHuy’ thì cũng mất luôn thông tin về phòng có mã là số 1 Việc thiết kế CSDLchia thành 2 bảng, một bảng nói về ‘ Trần Quang Huy’ trong bảngNHÂN_VIÊN, các thông tin về phòng số 2 vẫn còn trong bảng PHÒNG

2.3 Dị thường sửa bộ ( Update Anomalies):

Trang 25

Các quan hệ tổng quát (đã chuẩn hoá và chưa chuẩn hoá)

Các quan hệ 1NF( các quan hệ đã chuẩn hoá)

Các quan hệ 2NF Các quan hệ 3NF Các quan hệ 4NF Các quan hệ 5NF

- Trong trường hợp muốn thay đổi giá trị của một thuộc tính của một phòng

cụ thể nào đó ( chẳng hạn điện thoại của phòng số 5), trong quan hệNHÂNVIÊN_PHÒNG, tất cả các bộ phận nhân viên của phòng này đều phảiđược sửa đổi tương ứng Thay vì thể, nếu chúng ta thiết kế CSDL với 2 bảng,chúng ta chỉ cần sửa đổi một bộ trong quan hệ phòng mà không e ngại phá vỡtính nhất quán của CSDL

- Sở dĩ có dị thường cập nhật như vậy đối với bảng NHÂNVIÊN_PHÒNG là

vì bảng này chứa đựng quá nhiều thông tin, vừa thông tin chi tiết về thực thểnhân viên, vừa thông tin chi tiết về thực thể phòng Khi dùng 2 bảng, chúng ta

đã tách bớt thông tin, không để tất cả trong một bảng Tuy vậy, việc táchthành nhiều bảng như thế này cần phải thoả điều kiện không làm mất thôngtin và bảo đảm được các ràng buộc quan trọng Cần phải có những nghiên cứu

về dạng dư thừa dữ liệu để đưa ra các tiêu chuẩn thiết kế CSDL Phụ thuộchàm là một dạng ràng buộc giữa các thuộc tính, vì vậy trở thành một đốitượng được tập trung nghiên cứu trong lý thuyết thiết kế CSDL quan hệ

B Chuẩn hoá:

Một quan hệ được gọi là chuẩn hoá nếu trong quan hệ đó các miền chỉchứa các giá trị nguyên tố (không chia nhỏ được nữa) Mô hình quan hệ chỉcho phép sử dụng các quan hệ đã được chuẩn hoá

Sơ đồ “ Các mức của chuẩn hoá” cho ta thấy các mức chuẩn hoá được

sử dụng trong thiết kế dữ liệu dạng quan hệ

Trang 26

Các mức của chuẩn hoá

I Phụ thuộc hàm (Functional Dependency, FD)

1.Một số khái niệm:

1.1.Khái niệm về phụ thuộc hàm:

Khái niệm về sự phụ thuộc hàm trong một quan hệ là rất quan trọngđối với việc thiết kế mô hình dữ liệu Năm 1970, E.F.Codd đã mô tả sự phụthuộc hàm trong mô hình dữ liệu quan hệ, nhằm giải quyết việc phân giãkhông mất thông tin

Khái niệm chung:

Cho R ={ a1, a2,…,an } là tập hợp các thuộc tính

r = { h1, h2,…, hn } là một quan hệ trên R

A,B ¿ R ( A, B là tập cột, hay tập thuộc tính)

Khi đó ta nói: A xác định hàm cho B hay B phụ thuộc hàm vào A trongr

Trang 27

Ký pháp: A ⃗f B nếu: ( ∀ hi, hj ¿ r) (( ∀ a ¿ A) ( hi(a) =

hj(a)))

⇒ ( ∀ b ¿ B) ( hi(b) = hj(b)))Điều đó có nghĩa là khi đối số trùng nhau thì hàm có cùng giá trị

Người ta còn viết, (A,B) hay A → B thay cho A ⃗f B Lúc đó, tập hợptất cả ( A,B) như thế xác định một họ f trên R

Khái niệm về phụ thuộc hàm còn có thể được phát biểu như sau: “ Cho trước

một quan hệ R, chúng ta nói rằng, thuộc tính Y của R là phụ thuộc hàm vàothuộc tính X của R nếu và chỉ nếu mỗi giá trị của X trong R được kết hợp vớiđúng một giá trị của Y trong R tại bất kỳ thời điểm nào”

Nhận xét: Ta có thể thấy rằng khi B phụ thuộc vào hàm A, nếu hai dòng bất

kỳ mà các giá trị của tập thuộc tính A bằng nhau từng cặp một, thì kéo theocác giá trị trện tập thuộc tính B cũng phải bằng nhau từng cặp một

Trang 28

KHA0

04

Lại PhươngAnh

KHA0

05

Vũ Ngọc Anh Cổ Tiết, Tam Nông Phú Thọ 1

Trong quan hệ THISINH, dựa vào định nghĩa phụ thuộc hàm của quan hệ tathấy có hai sự phụ thuộc hàm :

{ TINH} → { KVUC}

{ SBD} → { HOTEN,DIACHI,TINH,KVUC }

Cách thức để chỉ định điều kiện áp đặt trong lược đồ khái niệm là khai báo sựphụ thuộc hàm Sau này chúng ta sẽ thấy các khái niệm về chuẩn hoá sẽ cho

ta các cách khai báo đơn giản các phụ thuộc hàm như vậy

1.2.Quy ước về ký hiệu:

Các chữ hoa ở đầu bộ chữ cái như: A, B, C,… biểu thị một thuộc tính đơnCác chữ hoa ở cuối bộ chữ cái như: U, V,…,Z biểu thị cho tập các thuộc tính,

có thể là tập chỉ một thuộc tính

R dùng để biểu thị một lược đồ quan hệ

Chúng ta sử dụng r cho một quan hệ, là thể hiện hiện hành của lược đồ R

Ký hiệu nối kết chuỗi được dùng biểu thị phép hợp, do vậy, A1,…,An đượcdùng để biểu diễn tập các thuộc tính {A1,…,An }, và XY viết tắt của X ¿ Y

Trang 29

Trường hợp XA, AX cũng được viết thay cho X ¿ {A}, với X là tập cácthuộc tính và A là một thuộc tính đơn.

1.3.Ý nghĩa của phụ thuộc hàm:

Các phụ thuộc hàm nảy sinh tự nhiên trong nhiều tình huống Chẳnghạn, nếu R biểu diễn cho một thực thể có các thuộc tính là A1,…,An và X làtập các thuộc tính tạo ra một khoá cho tập thực thể này thì chúng ta có thểkhẳng định rằng X → Y với mọi tập con thuộc tính Y, kể cả khi tập Y có cácthuộc tính chung với X Lý do là các bộ của mỗi quan hệ khả hữu r biểu diễncác thực thể, và các thực thể được nhận dạng bằng giá trị của các thuộc tínhkhoá Vì vậy, hai bộ giống nhau ở các thuộc tính trong X phải biểu diễn chocùng một thực thể và do đó chỉ là một bộ

Tương tự, nếu quan hệ R biểu diễn mối quan hệ nhiều - một từ tập thựcthể E1 đến tập thực thể E2, và trong số các thuộc tính Ai có các thuộc tính tạothành khoá X cho E1 và khoá Y cho E2 thì khẳng định X → Y là đúng, vàthực sự, mọi tập thuộc tính của R đều phụ thuộc hàm vào X Tuy nhiên, Y

→ X sẽ không đúng trừ khi đây là mối liên hệ một - một

Cần nhấn mạnh rằng, phụ thuộc hàm là những khẳng định về tất cả quan hệkhả hữu của lược đồ quan hệ

1.4.Các tính chất của phụ thuộc hàm:

Chúng ta cần nhắc lại rằng phụ thuộc hàm là khái niệm nói về sự ràngbuộc giữa các tập thuộc tính của R trên lược đồ R hoặc trên quan hệ r, nếukhông gây ra nhầm lẫn khi nói cho phụ thuộc hàm X → Y ta tự hiểu là phụthuộc hàm trên lược đồ R Nếu X,Y,Z và W là những tập thuộc tính con của Rthì ta có một số tính chất cơ bản của lớp các phụ thuộc hàm như sau:

* Tính phản xạ: X → X, tổng quát hơn nếu Y ¿ X thì X → Y

Trang 30

- Tính phản xạ : Điều này hiển nhiên vì t và t’đã bằng nhau trong tập

X thì chúng phải bằng nhau trong mọi tập con của X, nói cách khác t.X =t’.X ⇒ t.X = t’.X và t.Y = t’.Y với mọi Y ¿ X

- Tính bắc cầu : Giả sử t.X = t’.X theo giả thiết X → Y nên ta có t.Y

= t’.Y mà t.Y = t’.Y theo giả thiết Y → Z Ta lại có t.Z = t’.Z Vậy ta có X

→ Z

- Tính mở rộng 2 vế : Giả sử t.XZ = t’.XZ ta phải chứng minh t.YZ =

t’.YZ Thật vậy, từ t.XZ = t’.XZ ta có t.X = t’.X và t.Z = t’.Z Theo giả thiếtt.X = t’.X thì t.Y = t’.Y Như vậy, từ t.XZ = t’.XZ ta có t.Y = t’.Y và t.Z =t’.Z mà t.Y = t’.Y và t.Z = t’.Z thì t.YZ = t’.YZ Vậy XZ → YZ

Các tính chất khác cũng có thể chứng minh tương tự Chúng ta thấyrằng, các tính chất khác cũng có thể suy ra từ 3 tính chất trên Trong lý thuyếtCSDL, 3 tính chất trên gọi là hệ tiên đề Armstrong

Trang 31

2.Lý luận về phụ thuộc hàm:

Giả sử R là một lược đồ quan hệ A,B,C là một số thuộc tính của nó.Cũng giả sử rằng các phụ thuộc A → B và B → C đúng trong R Chúng tamong muốn rằng phụ thuộc hàm A → C cũng đúng trong R Thật vậy, giả sử

r là một quan hệ thoả A → B và B → C, nhưng có hai bộ μν trong

r giống nhau ở thành phần ở thành phần A nhưng không giống nhau ở thànhphần C Thế thì chúng ta đặt câu hỏi liệu μν có giống nhau ở thuộctính B hay không Nếu không, r vi phạm A → B Nếu có, thì bởi vì chúngkhông giống nhau ở thành phần C, r vi phạm B → C Do vậy, r buộc phảithoả A → C

Tổng quát, gọi F là tập các phụ thuộc hàm cho lược đồ quan hệ R, vàgọi X → Y là một phụ thuộc hàm Ta gọi F khẳng định logic XY, và viết

là F |= X → Y, nếu mỗi quan hệ r của R thoả các phụ thuộc trong F thì cũngthoả X → Y Ở trên, chúng ta thấy rằng nếu F chứa A → B và B → C thì

A → C được khẳng định logic từ F Nghĩa là:

{ A → B, B → C} |= A → C

2.1 Bao đóng của các tập phụ thuộc:

2.1.1 Định nghĩa F+: bao đóng của F, là tập các phụ thuộc hàm được

khẳng định logic từ F, nghĩa là:

F+= { X → Y | F |= X → Y}

Thí dụ: Gọi R=ABC và F={A → B,B → C} Thế thì bao đóng F+ chứa tất

cả các phụ thuộc X → Y sao cho:

Hoặc X chứa A, chẳng hạn: ABC → AB, AB → BC, hay A → C

Trang 32

B, B → C hay B → φ

Hoặc X → Y là một trong ba phụ thuộc C → C, C → φ hay φ

φ

2.1.2 Các tính chất đơn giản của tập F + :

* Tính phản xạ : Với mọi tập phụ thuộc hàm ta luôn có F ¿ F+

* Tính đơn điệu : Nếu F ¿ G thì F+ ¿ G+

* Tính luỹ đẳng : Với mọi tập hợp phụ thuộc hàm F ta luôn có F++ = F+

2.2 Khoá :

2.2.1 Khái niệm khoá :

Khi nói đến các tập thực thể, chúng ta đã giả sử rằng tồn tại một khoá,

đó là tập các thuộc tính xác định duy nhất một thực thể Cũng có một kháiniệm tương tự cho các quan hệ có các phụ thuộc hàm Nếu R là một lược đồquan hệ với các thuộc tính A1A2…An và các phụ thuộc hàm F, X là một tậpcon của A1A2 An, chúng ta nói X là một khoá của R nếu :

X → A1A2…An thuộc F+ Nghĩa là phụ thuộc của tất cả các thuộc tính vàotập thuộc tính X được cho trước hoặc được suy ra từ những phụ thuộc đã choKhông có tập con Y nào của X, Y ¿ X, có phụ thuộc Y → A1A2…An thuộc

F+

Đối với một quan hệ có thể tồn tại nhiều khoá, và đôi khi chúng ta chỉ

định một khoá làm khoá chính ( Primary key) Khoá chính có thể đóng vai trò

Trang 33

làm khoá của tập tin khi quan hệ được cài đặt Tuy nhiên, chúng ta hoàn toàn

có thể chọn một khoá bất kỳ làm khoá chính Thuật ngữ khoá dự tuyển

( Candidate key) đôi khi được dùng để biểu thị tập thuộc tính nhỏ nhất xác

định các thuộc tính khác, còn thuộc tính khoá dành cho một khoá dự tuyển được chọn Chúng ta cũng dùng thuật ngữ « Khoá bao hàm » ( Super key) cho tập bao hàm ( Superset) của một khoá, cần phải nhớ rằng khoá là một

trường hợp đặc biệt của khoá bao hàm

Theo định nghĩa của Codd : nếu có hai dòng bằng nhau trên các giá trịcủa khoá A thì kéo theo bằng nhau trên tất cả các cột còn lại Như vậy, sẽ cóhai cột bằng nhau, điều này không thể có được và nếu có thì đấy là dữ liệunhầm lẫn Chúng ta gọi A ( A ¿ R) là một khoá tối tiểu của r ( tương ứng

của s, của Y) nếu :

bỏ bản ghi ấy hoặc bổ sung một số bản ghi mới vào trước hoặc sau bản ghi

mà ta tìm được

Trang 34

tiểu, tức là khoá nhỏ nhất mà không thể nhỏ hơn được nữa để việc so sánh cácgiá trị khoá với nhau trong quá trình tìm kiếm bản ghi nhanh nhất

- Một sơ đồ có thể có nhiều khoá, thậm chí còn có nhiều khóa tối tiểu, vàchúng ta chỉ định một trong các khoá tối tiểu này làm khoá chính, khoá chính

có thể được dùng như là khoá tệp khi quan hệ trên sơ đồ này được cài đặt

Ký hiệu Kr, Ks, Ky là tập tất cả các khoá tối thiểu của r (s,Y) Ta gọi K

(với K tập con của P(R)) là một hệ Sperner trên R nếu với ∀ A, B ¿ K

⇒ A ¿ B, dễ thấy Kr, Ks, Ky là hệ Sperner trên R

2.1.3 Tập các phản khoá :

Trang 35

Tập phản khoá đóng vai trò quan trọng trong quá trình nghiên cứu cấutrúc logic của các họ phục thuộc hàm, khoá, dạng chuẩn, quan hệ Armstrong,đặc biệt đối với các bài toán tổ hợp trong mô hình dữ liệu quan hệ

Định nghĩa : Giả sử K = {K1, K2,…,Kt } là một hệ Sperner trên R = {a1,a2,

…,an } Ta định nghĩa tập các phản khoá của K, ký hiệu K-1 như sau :

K-1 = {A ¿ R : (B ¿ K) ⇒ (B ¿ A) và (A ¿ C) ⇒ ( ∃ B ¿ K)(B ¿ C) }

( Tức là không chứa tập con thuộc K và nới rộng nó ra sẽ có 1 phần tử K lọtvào)

Nhận xét:

- Nếu K đóng vai trò là một tập các khoá tối tiểu của một sơ đồ quan hệnào đó thì theo định nghĩa K-1 là tập tất cả các tập không phải là khoá lớn nhất

- Dễ thấy rằng K-1 cũng là hệ Sperner trên R

- Ở đây ta luôn giả thiết rằng nếu một hệ Sperner đóng vai trò tập các khoá tối tiểu ( Tập các phản khóa), thì hệ Sperner này không rỗng ( không

chứa R)

2.3 Các tiên đề cho phụ thuộc hàm:

Để xác định khoá và hiểu được các phép suy diễn logic cho các phụthuộc hàm nói chung, chúng ta cần tính được F+ từ F, hoặc ít nhất khẳng địnhđược X → Y có thuộc F+ hay không ? Nếu biết tập phụ thuộc hàm F và phụthuộc hàm X → Y Muốn vậy chúng ta phải có những cách suy diễn cho biếtlàm sao có thể suy ra một hay nhiều phụ thuộc từ các phụ thuộc khác Các

quy tắc này thường được gọi là hệ tiên đề Armstrong, giả sử rằng chúng ta đã

có một lược đồ quan hệ với tập thuộc tính U - là tập gồm đầy đủ các thuộc

Trang 36

có các quy tắc suy diễn như sau :

Tính phản xạ : Nếu Y ¿ X ¿ U, thì X → Y được khẳng định logic từ F

Quy tắc này đưa ra những phụ thuộc tầm thường là những phụ thuộc mà vế

trái được hàm chứa trong vế phải Những phụ thuộc tầm thường đều đúngtrong mọi quan hệ, chúng nói lên rằng việc sử dụng quy tắc này chỉ phụ thuộcvào U, không phải vào F

Tính tăng trưởng : Nếu X → Y đúng, và Z là một tập con của U thì XZ →

YZ Để ý rằng X, Y và Z là tập thuộc tính và XZ là dạng viết tắt của X ¿ Z.Một điều quan trọng khác cũng cần phải nhớ rằng phụ thuộc X → Y đã cho

có thể thuộc F, hoặc nó có thể được suy ra từ các phụ thuộc trong F bằng cách

sử dụng các tiên đề mà chúng ta đang mô tả

Tính bắc cầu : Nếu X → Y và Y → Z đúng thì X → Z đúng

rằng hệ tiên đề Armstrong là đúng đắn, nghĩa là chúng chỉ dẫn đến những kếtluận đúng Còn tính đầy đủ khó chứng minh hơn Chúng có thể được dùng đểthực hiện các phép suy diễn có giá trị về các phụ thuộc Trước tiên chúng ta

chứng minh tính đúng đắn (Soundness) của hệ tiên đề Armstrong.

Bổ đề 1 : Hệ tiên đề Armstrong là đúng đắn, nghĩa là nếu X → Y được suy

ra từ F nhờ hệ tiên đề này thì phụ thuộc X → Y đúng trong mọi quan hệ màcác phụ thuộc của F đúng

Chứng minh : Tiên đề về tính phản xạ rõ ràng là đúng đắn Chúng ta không

thể có một quan hệ r với hai bộ giống nhau ở các thành phần trong X nhưng

lại không giống nhau ở một tập con nào đó của X Để chứng minh tính tăng

Trang 37

μν giống nhau ở các thuộc tính của XZ nhưng khác nhau ở các thuộctính của YZ Bởi vì chúng không thể khác nhau ở các thuộc tính của Z, μ

ν phải khác nhau ở một số thuộc tính của Y Nhưng vì μν giốngnhau ở phần X nhưng không giống nhau ở phần Y nên mâu thuẫn với giả thiết

X → Y đúng đối với r Tính đúng đắn của tiên đề về tính bắc cầu là sự mở

rộng của lập luận trước đây về A → B và B → C suy ra A → C

Các quy tắc suy diễn bổ sung :

Bổ đề 2 :

Quy tắc hợp : {X → Y, X → Z}|= X → YZ

Quy tắc giả bắc cầu : {X → Y, WY → Z}|= WX → Z

Quy tắc phân rã : Nếu X → Y đúng, và Z ¿ Y thì X → Z đúng

Chứng minh :

Chúng ta đã có X → Y nên dùng quy tắc tăng trưởng với X chúng ta có X

→ XY Chúng ta cũng có X → Z nên suy ra XY → YZ Nhờ tính bắc cầu,

từ X → XY và XY → YZ suy ra X → YZ

Sử dụng tính tăng trưởng X → Y thành WX → WY Bởi vì chúng ta đã có

WY → Z, tính bắc cầu cho phép suy ra WX → Z

Từ tính phản xạ ta có Y → Z, nên nhờ tính bắc cầu ta có X → Z

Một hệ quả quan trọng của các quy tắc hợp và phân rã là nếu A1,A2…

An là các thuộc tính thì X → A1A2…An đúng nếu và chỉ nếu X → Ai đúngvới mọi i Vì vậy chúng ta chỉ cần sử dụng các phụ thuộc mà vế phải chỉ cómột phụ thuộc tính duy nhất

Trang 38

2.3.2.Tính đầy đủ của hệ tiên đề Armstrong :

Bao đóng của tập thuộc tính : Trước khi chứng minh tính đầy đủ, chúng ta

cần định nghĩa bao đóng của một tập thuộc tính ứng với một tập phụ thuộc

hàm Gọi F là tập phụ thuộc hàm trên tập thuộc tính U X là một tập con của

U Thế thì X+, bao đóng của X (ứng với F), là tập các thuộc tính A sao cho X

→ A có thể suy ra từ F bằng hệ tiên đề Armstrong Điểm cốt lõi của baođóng của tập thuộc tính là nó cho phép chúng ta khẳng định rằng một phụthuộc X → Y có thể suy ra từ F bằng hệ tiên đề Armstrong được hay không

Bổ đề sau đây khẳng định điều này

Bổ đề 3 : X → Y suy ra được từ một tập phụ thuộc F đã cho bằng cách sửdụng hệ tiên đề Armstrong nếu và chỉ nếu Y ¿ X+ ; ở đây bao đóng của Xđược lấy ứng với F

Chứng minh : Đặt Y = A1A2 An cho tập thuộc tính A1A2…An và giả sử Y

¿ X+ Theo định nghĩa của X+, X → Ai được suy ra từ hệ tiên đề

Armstrong với mọi i Bằng quy tắc hợp, là bổ đề 2, X → Y đúng Ngược lại,giả sử rằng X → Y được suy ra từ hệ tiên đề này Đối với mỗi i, X → Ai

đúng theo quy tắc phân rã - là bổ đề 2, vì vậy Y ¿ X+

Bây giờ chúng ta có thể chứng minh tính đầy đủ (Completeness) của hệ

tiên đề Armstrong Chúng ta sẽ chứng minh rằng, nếu F là tập các phụ thuộc

đã cho, và không thể suy ra X → Y đúng bằng hệ tiên đề Armstrong thì phải

có một quan hệ trong đó tất cả các phụ thuộc của F đều đúng nhưng X → Ykhông đúng, nghĩa là F không khẳng định logic X → Y

Định lý 9: Hệ tiên đề Armstrong là đúng đắn và đầy đủ.

Trang 39

Các thuộc tính của X

1

1 1 1

1

1 1 1

Các thuộc tính khác

0

0 0 0

0

0 0 0

Chứng minh: Tính đúng đắn đã được chứng minh qua bổ đề 1, vì vậy chúng

ta chỉ còn phải chứng minh tính đầy đủ Gọi F là tập các phụ thuộc trên tậpthuộc tính U và giả sử X → Y không thể suy ra được từ hệ tiên đề này Xétmột quan hệ r có hai bộ được trình bày trong hình:

Quan hệ r chứng minh F không khẳng định logic XY

Trước tiên ta phải chứng minh rằng tất cả các vi phạm cho phép chúng

ta “đẩy” X+ vượt quá giá trị mà nó có được cho tập các phụ thuộc F

Trang 40

Giả sử V W thuộc F nhưng không được thoả bởi r Thế thì V X+,nếu không thì hai bộ của r không giống nhau ở các thuộc tính V, vì vậy không

vi phạm V W Cũng vậy, W không thể là một tập con của X+, nếu khôngquan hệ r sẽ thoả V W Gọi A là một thuộc tính của W không thuộc X+ Bởi

vì V X, nên X → V được suy ra từ hệ tiên đề Armstrong nhờ bổ đề 3 Phụ

thuộc V → W thuộc F, vì thế do tính bắc cầu chúgn ta có X → W Do tínhphản xạ, W → A vậy do tính bắc cầu, X → A được suy ra từ tiên đề này.Nhưng nếu vậy thì theo định nghĩa của bao đóng, A thuộc X+, mâu thuẫn vớigiả thiết Do vậy có thể kết luận rằng r thoả mọi phụ thuộc V → W trong F

Bây giờ chúng ta chứng minh rằng X → Y không thoả bởi r Giả sửrằng nó được thoả, hiển nhiên là X ¿ X+, nên suy ra rằng Y ¿ X+, nếukhông hai bộ của r sẽ có các giá trị trong X giống nhau nhưng các giá trị trong

Y lại không giống nhau Nhưng bổ đề 3 lại khẳng định rằng X → Y có thểđược suy ra từ các tiên đề X → Y có thể được suy ra từ các tiên đề, là điềutrái với giả thiết là X → Y không thể suy ra từ các tiên đề Vì thế X → Ykhông được thoả bởi r, mặc dù mỗi phụ thuộc thuộc F đều thoả Chúng ta kếtluận rằng khi X → Y không được suy ra được từ tập phụ thuộc F bằng hệtiên đề Armstrong, F cũng không khẳng định logic X → Y Điều này khẳngđịnh rằng hệ tiên đề này là đầy đủ

II Các bước chuẩn hoá dữ liệu :

Trong công tác quản lý và xử lý dữ liệu, chúng ta thường phải đưaCSDL về dạng đơn giản nhất, ít cồng kềnh nhất, tốn ít bộ nhớ nhất xử lýnhanh nhất và tất nhiên là có ít đặc thù nhất Để thực hiện mục đích đó, chúng

ta phải tiến hành “chuẩn hoá” các hệ CSDL Việc chuẩn hoá các quan hệ cũng

Ngày đăng: 04/07/2023, 13:09

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w