Một số chỉ dẫn khi xây dựng cơ sở dữ liệu quan hệ

Việc đặc biệt quan trọng nhất khi thiết kế cơ sở dữ liệu quan hệ là ta phải chọn ra tập những lược vật quan hệ tốt nhất có thể dựa trên một vài tiêu chí; nào đó. Và để sở hữu được chọn lọc tốt, thì họ cần sệt biệt xem xét mối ràng buộc giữa các dữ liệu trong quan liêu hệ, kia chí;nh là các phụ thuộc vào hàm.

Để đọc hơn về thắc mắc tại sao phải xây dựng một cơ sở tài liệu tốt, chúng ta hãy cùng mày mò ví; dụ sau

RESULT(StNo, StName, SubNo,SubName, Credit, Mark)

Quan hệ RESULT( công dụng học tập) có các thuộc tí;nh: StNo(Mã sinh viên), StName(Tên sinh viên), SubNo(Mã môn học), SubName(Tên môn học), Credit (Số đơn vị học trình) cùng Mark (điểm thi của sv trong môn học).Bạn vẫn xem: phụ thuộc hàm là gì

Sau đấy là minh hoạ dữ liệu của dục tình RESULT


*

Minh họa tài liệu của tình dục RESULT

Quan hệ trên kiến tạo chưa xuất sắc vì

Dư thừa dữ liệu (Redundancy): tin tức về sinh viên và môn học bị tái diễn nhiều lần. Ví như sinh viên có mã St01 thi 10 môn học tập thì thông tin về sinh viên này bị tái diễn 10 lần, tương tự đối với môn học tất cả mã Sub04, nếu có 1000 sinh viên thi thì thông tin về môn học cũng lặp lại 1000 lần Không đồng nhất (Inconsistency):Là hệ quả của dư vượt dữ liệu. Trả sử sửa bản ghi máy nhất, tên sinh viên được chữa thành Nga thì dữ liệu này lại không đồng điệu với bạn dạng ghi thứ hai và 3 (vẫn mang tên là Mai). Dị hay khi thêm bộ (Insertion anomalies): nếu muốn thêm thông tin một sinh viên bắt đầu nhập trường (chưa tất cả điểm môn học nào) vào quan hệ tình dục thì ko được vì khoá chí;nh của dục tình trên bao gồm 2 nằm trong tí;nh StNo cùng SubNo. Dị hay khi xoá bộ (Deletion anomalies): giả sử xoá đi bản ghi cuối cùng, thì thông tin về môn học tất cả mã môn học là SubNo=Sub07 cũng mất.

Nhận xét: Qua phân tí;ch trên, ta thấy chúng ta nên kiếm tìm cách bóc tách quan hệ trên thành các quan hệ bé dại hơn.Bạn vẫn xem: dựa vào hàm không hề thiếu là gì

Trong chương này họ sẽ phân tích về đông đảo khái niệm và những thuật toán để có thể thiết kế được phần đa lược trang bị quan hệ tốt.

phụ thuộc vào hàm(Functional Dependencies) nhờ vào hàm (FDs) được thực hiện làm thước đo để reviews một dục tình tốt. FDs và khoá được sử dụng để định nghĩa những dạng chuẩn của quan hệ. FDs là những ràng buộc dữ liệu được suy ra từ ý nghĩa và những mối tương quan giữa những thuộc tí;nh.

Định nghĩa phụ thuộc hàm

Cho r(U), với r là quan lại hệ với U là tập thuộc tí;nh.

Bạn đang xem: Phụ thuộc hàm đầy đủ là gì

Cho A,B U, phụ thuộc vào hàm X → Y (đọc là X xác minh Y) được quan niệm là:

t, t’ ∈ r trường hợp t.X = t’.X thì t.Y = t’.Y

(Có nghĩa là: ví như hai bộ tất cả cùng trị X thì tất cả cùng trị Y)

Phụ trực thuộc hàm được suy ra từ hồ hết quy tắc dữ liệu khi ta điều tra yêu cầu của bài xích toán.

Từ mã số bảo hiểm xã hội, ta có thể suy ra được tên của nhân viên cấp dưới (Ssn→ Ename)Từ mã dự án, ta hoàn toàn có thể suy ra tên cùng vị trí; của dự án (PNumber→PName, PLcation)


*

màn biểu diễn FDs của 2 lược đồ gia dụng quan hệ EMP_DEPT cùng EMP_PROJ

Hệ định đề Armstrong

Cho lược trang bị quan hệ r(U), U là tập nằm trong tí;nh, F là tập các dựa vào hàm được quan niệm trên quan hệ r.

Ta có phụ thuộc hàm A → B được suy diễn logic từ F nếu quan hệ nam nữ r trênU thỏa các phụ thuộc hàm vào F thì cũng thỏa dựa vào hàm A → B.

Tập dựa vào hàm: F = A → B, B → C

Ta có nhờ vào hàm A → C là dựa vào hàm được suy trường đoản cú F.

Hệ tiên đề Armstrong được thực hiện để đưa ra các dựa vào hàm suy diễn từ bỏ F.

Hệ tiên đề Armstrong bao gồm:n

1. Phản xạ: Nếu Y → X thì X → Y

2. Tăng trưởng: Nếu Z → U cùng X → Y thì XZ → YZ (Ký hiệuXZ là X∪Z)

3. Bắc cầu: Nếu X → Y cùng Y → Z thì X → Z

4. Giả bắc cầu: Nếu X → Y với WY → Z thì XW → Z

5. Luật hợp: giả dụ X → Y với X → Z thì X →YZ

6. Luật phân rã: Nếu X → Y và Z → Y thì X → Z

Trong sáu lý lẽ trên thì a4, a5, a6 suy được trường đoản cú a1, a2, a3.

Bao đóng của tập dựa vào hàm

Ta điện thoại tư vấn f là một phụ thuộc hàm được suy dẫn tự F, cam kết hiệu là F ├ f nếu tồn trên một chuỗi nhờ vào hàm: f1, f2,…., fn làm thế nào để cho fn=f cùng mỗi fi là 1 trong thành viên của F hay được suy dẫn từ những nhờ vào hàm j=1,…,i-1 trước đó phụ thuộc luật dẫn. Bao đóng góp của F: ký hiệu là F+ là tập toàn bộ các phụ thuộc vào hàm được suy trường đoản cú F phụ thuộc hệ định đề Armstrong. F+ được định nghĩa:

F + = X →Y

Bao đóng góp của tập thuộc tí;nh X bên trên F

Bao đóng của tập thuộc tí;nh X xác minh trên tập phụ thuộc vào hàm F ký kết hiệu là X+ là tập hợp toàn bộ các trực thuộc tí;nh rất có thể suy ra từ X. Cam kết hiệu:

X + = Y

X+ hoàn toàn có thể được tí;nh toán trải qua việc lặp đi lặp lại cá nguyên tắc 1, 2, 3 của hệ tiên đề Armstrong.

Thuật toán xác minh bao đóng góp của tập ở trong tí;nh X+

X+ := X;repeat oldX+ := X+; for (mỗi nhờ vào hàm Y →Z vào F) vị if Y ⊆ X+ then X+ ∪Zuntil (oldX+ = X+ ); đến tập phụ thuộc vào hàm

F = SSN→ENAME, PNUMBER→PNAME, PLOCATION,SSN, PNUMBER → HOURS Suy ra: SSN+ = SSN, ENAMEPNUMBER+ = PNUMBER, PNAME, PLOCATIONSSN, PNUMBER+ = SSN, PNUMBER, ENAME, PNAME, PLOCATION, HOURS

Khoá của quan lại hệ

Cho quan hệ r(R), tập K R được hotline là khóa của quan hệ r nếu: K+=R cùng nếu bớt một trong những phần tử ngoài K thì bao đóng của nó sẽ khác R.

Như nạm tập K R là khoá của quan hệ tình dục nếu K+=R cùng ( K A )+ ≠R , A R.

ChoR = A, B, C, D, E, G và tập phụ thuộc hàm:

F= AB → C , D → EG , BE → C , BC → D , CG → BD, ACD → B, CE → AG

Ta vẫn thấy các tập nằm trong tí;nh

K1 = A, B , K2 = B,E , K3=C,G , K4=C,E , K5 = C,D, K6=B,C phần đông là khóa của quan lại hệ.

Như vậy, một quan liêu hệ có thể có nhiều khóa.

Thuật toán kiếm tìm khoá

Ý tưởng: bước đầu từ tập U vì chưng Closure(U+,F) = U. Kế tiếp ta giảm dần các bộ phận của U để nhận thấy tập nhỏ bé nhất mà bao đóng của nó vẫn bằng U.

Thuật toán

Input: Lược đồ vật quan hệ r(U), tập phụ thuộc hàm F. Output: Khoá K cách 1: Gán K = U Buớc 2: Lặp lại công việc sau: Loại phần tử A khỏi K nhưng mà Closure( K -A,F ) =U Nhận xét

Thuật toán bên trên chỉ tìm được một khóa. Nếu phải tìm nhiều khóa, ta đổi khác trật tự loại trừ các phần tử của K. Bạn cũng có thể cải thiện tốc độ tiến hành thuật toán trên bằng cách: Trong cách 1 ta chỉ gán K=Left (là tập các phần tử có mặt tay trái của các nhờ vào hàm)

Cho lược vật quan hệ R = A,B,C,D,E,G,H,I và tập dựa vào hàm:

F= AC → B, BI → ACD, ABC → D , H → I , ACE → BCG , CG → AE

Tìm khoá K?

Ta có Left=A,B,C,H,E,G

Bước 1: K=Left=A,B,C,H,E,G

Bước 2

Bước 2 BCHEG
Tập ở trong tí;nh A B C D E G H I Ghi chú
ABCHEG x x x x x x x x
x x x x x x x x Loại A
CHEG x x x x x x x x Loại B
CHG x x x x x x x x Loại E

Như vậy, C,H,G là một trong những khoá của R.

Nếu ao ước tìm tất cả các khoá của R, ta cần biến hóa trật tự một số loại bỏ phần tử của khoá K.

Xem thêm: Số Ref Là Gì ? Ref Là Viết Tắt Của Từ Gì? Ý Nghĩa Của Ref Ý Nghĩa Của Ref Trong Những Lĩnh Vực Khác Nhau

Tập dựa vào hàm tương đương

Hai tập nhờ vào hàm F với G là tương đương nếu

tất cả các phụ thuộc vào hàm trong F rất có thể được suy ra từ bỏ G, và toàn bộ các dựa vào hàm vào G có thể suy ra trường đoản cú F.

Vì thế, F và G là tương đương nếu F+ = G+

Vì thế, thuật toán sau đây sẽ bình chọn sự tương tự của nhì tập dựa vào hàm:

F đậy E: X Y ∈ E, tí;nh X+ trường đoản cú F, tiếp nối kiểm tra xem Y∈ X+ E bao phủ F: X Y ∈ F, tí;nh X+ trường đoản cú E, tiếp đến kiểm tra coi Y∈X+

Tập nhờ vào hàm về tối thiểu

Tập phụ thuộc hàm là buổi tối thiểu nếu như nó thoả mãn những điều kiện sau:

Chỉ có một thuộc tí;nh nằm tại vị trí phí;a mặt tay trái của tất cả các phụ thuộc hàm vào F. Không thể bỏ đi bất kỳ một phụ thuộc hàm nào trong F nhưng vẫn giành được một tập phụ thuộc hàm tương đương với F (tức là, ko có phụ thuộc vào hàm dư thừa). Ko thể vắt thế ngẫu nhiên phụ ở trong hàm XA nào trong F bằng dựa vào hàm YA, cùng với YX cơ mà vẫn đạt được một tập phụ thuộc hàm tương tự với F (tức là, không có thuộc tí;nh dư thừa trong phụ thuộc hàm)

Nhận xét:

toàn bộ các tập phụ thuộc vào hàm đều phải có phụ ở trong hàm về tối thiểu tương đương với nó. Bao gồm thể có khá nhiều phụ thuộc hàm buổi tối thiểu

Thuật toán: tìm tập nhờ vào hàm tối thiểu G của F

1. Đặt G:﹦F. 2. Sửa chữa tất cả các phụ thuộc hàm X→A1,A2,…,An vào G bằng n nhờ vào hàm: X →A1, X →A2,…, X →An. 3. Cùng với mỗi phụ thuộc hàm X → A vào G,với mỗi thuộc tí;nh B vào X nếu ((G-X → A) ∪ ( X -B) →A ) là tương đương với G, thì thay thế X→ A bởi (X - B) → A vào G. (Loại quăng quật thuộc tí;nh dư thừa trong phụ thuộc vào hàm) 4. Với mỗi phụ thuộc hàm X → A vào G, trường hợp (G-X → A) tương đương với G, thì loại trừ phụ thuộc hàm X → A thoát khỏi G.(Loại bỏ phụ thuộc hàm dư thừa)

Dạng chuẩn 1(First Normal Form)

Định nghĩa

Một quan hệ nam nữ ở dạng chuẩn chỉnh 1 nếu những giá trị của toàn bộ thuộc tí;nh trong quan hệ nam nữ là nguyên tử (tức là chỉ có một giá trị tại một thời điểm).