DẠNG CHUẨN 123BC NF, THUẬT PHÂN RÃ

3 8 0
DẠNG CHUẨN 123BC NF, THUẬT PHÂN RÃ

Đang tải... (xem toàn văn)

Thông tin tài liệu

cơ sở dữ liệu, truy vấn dữ liệu, toán tìm dạng chuẩn, phân rã dạng chuẩn 1NF, 2NF, 3NF, BCNF,QUAN HỆ KHÔNG CHUẨN QUAN HỆ DẠNG CHUẨN 1 QUAN HỆ DẠNG CHUẨN 2 QUAN HỆ DẠNG CHUẨN 3 Loại bỏ các thuộc tính tổng hợp (thuộc tính có giá trị là kết quả tính toán từ các giá trị khác ) Xác định khóa chính Chuyển thuộc tính lặp lại thành thuộc tính của quan hệ riêng Chỉ thực hiện khi khóa chính gồm nhiều thuộc tính Thuộc tính không khóa phải phụ thuộc hàm đầy đủ và khóa chính Chuyển thuộc tính chỉ phụ thuộc vào một khóa chính thành thuộc tính của quan hệ riêng Chuyển thuộc tính không khóa

vi du Vi du = Sau eon rã, ý đến phụ thuộc hàm gốc F> ADH, BH> GE a_ Chia F>ADH thành {F>AH, = Cho R= (U,F), U={ABCDEFGH}, F= {ABH > C, ADE, BGH> F, F> ADH, BH> GE} s Tìm FD vi phạm BCNF F>D} a_ Chia BH>GE thành {BH>G, BH>E} s F^D, BH>E khơng có chỗ phân rã vi khơng có ràng buộc có đủ thuộc tính cho D này) s Nhưng a_ F=>D suy diễn từ F->AH c R2 A>DE e R1 + (ABH)+ = U, ABH siêu khóa, ABH > C khơng vi phạm BCNF +a_ A+zU, A>DE vi phạm BCNF s Chia R thành a R1 =(ADE, {A>DE}) a_ BH> E suy diễn dựa vào (BH)+ từ R1,R2 a R2=(ABCFGH,{ABH>C, BGH>F, F> AH, BH>G}) >> Phân rã R1,R2 bảo toàn phụ thuộc hàm vi du Ví dụ phân rã khơng mắt thông tin (1) » Rt la BONF a Với R2: a ABH> C, BGH > F khéng vi phạm BCNF (ABH, BGH a = Cho: * R(ABCDEFG) + F={B>A,D>C,D->EB, DF >G} siêu khóa) F> AH vi pham BCNF =_ Tách dạng chuẩn BC, không mắt thông tin > Phân rã R2 thành R(ABCDEFG) a R21=(FAH, {F>AH}) a R22= (FBCG, {}) BoA > R21, R22 déu la BCNF nhung FD ABH> C, BGH > F BH>G khơng có mặt khơng thé suy dẫn từ FD R21, R22 {B >A}, R,(DBCE) Kp3 = D cdio Thuộc tính khóa (khơng khóa): A thuộc tính khóa (khơng khóa) Q nếu: " Q1(MNOPX); Q2(PY) ® A thuộc tính phụ thuộc đầy đủ (khơng phụ thuộc đầy đủ) vào X X — A phụ thuộc hàm đầy đủ (không đầy đủ) ~_ CuuDuongThanCong.com " DC2 cdn xuat trùng lặp liệu nên xuất thường cập nhật liệu Ví dụ: NGUOI_THUE cdio Vi du: NHA_CHO_THUE (MANT, MANHA, DCHI_NHA, NGAYTHUE_BT, NGAYTHUE_KT, GIATHUE, MACHUNHA, TENCHUNHA) DCHT_NHA CRỚG | PGiế | 432CMTE,QTE cm add NGAYTHUEBET | NGAYTHUE KT | GIATHUE | MACHUNHA | TENCHUNHA a aati ee man Ï 01/09/2007 1Ý ng l max Í =_ 01/10/2011 1500 se i ae oo S5 Xét quan hệ NHÀ CHO THUE: PK = {MANT, MANIA} F={ MANHA — DCHL_NHA, GIATHUE, MACHUNHA, TENCHUNHA Vậy NHA_CHO_THUE có thỏa ĐC2? ® NHÀ CHO THUE: không thỏa DC2 —- chi dat DC1 (MANT, TENNT) MANT | TENNT Xét quan NGUOL THUE: PK = {MANT}, F = {MANT — TENNT} | Lên NGUOI _THUEcó đạt DC2 ? C56 | HVGs > NGUOL THUE: thoa DC2 N ường D1 HT https://fb.com/tailieudientucntt Dang chuan (DC2) Tmunaual rat Mọi lược đồ quan hệ đạt DC2 đạt DC1 Khe mm DF Nhận xét: - Thuộc tính phụ thuộc đầy đủ (khơng phụ thuộc đầy đủ) vào tập thuộc tính: MANT Kpq = ~_ Nếu R có khóa khóa có thuộc tính R đạt DC M,N,0 thuộc tính khóa Q1, P thuộc tính khóa Q2 thuộc tính khơng khóa Q1 ® {DF — G}, Dạng chuẩn (DC2) ® A có (khơng có) tham gia vào khóa Q ~ R,(DFG) thuộc tính khóa «AcQ' Vidu4.5: Kpo = DF "` Một lược đồ đạt dạng chuẩn lược đồ dat DCI1 thuộc tính khơng khóa phụ thuộc đầy đủ vào Một số khái niệm bổ sung - {D >C, D> EB, DF > G}, D -› BCE {D > C, D > EB}, Dạng chuẩn (DC2) R,(BCDEFG) R,(BA) Kp, =B >> Phân rã R2 khơng bảo tồn phụ thuộc hàm ~ F, Kp = DF lan |grmwh Mies = Biến đổi DC1 sang DC2 cdio Xác định khóa quan hệ bị DC1: NHÀ _CHO_THUE với PK= {MANT, MANHA} " B2: Xác định pth gây thuộc tính khơng khóa khơng phụ thuộc đầy đủ vào khóa MANHA -> DCHI_NHA, GIA_THUE, MACHUNHA, TENCHUNHA " B3: Nếu có tồn pth khơng đầy đủ khóa xóa chúng quan hệ cũ đưa chúng vào quan hệ ~ Xóa pth MANHA -> DCHI_NHA, GIA_THUE, MACHUNHA, TENCHUNHA cách đưa chúng vào quan hệ NHA_THUE (MANHA,DCHI_NHA, GIA_THUE, MACHUNHA, TENCHUNHA) ~- Đổi tên quan hệ cũ thành TT_THUE_NHA(MANT,MANHA, NGAYTHUE_BT, NGAYTHUE_KT) Biến đổi DC1 sang DC2 Dạng chuẩn (DC3) DC1 NHA CHO_THUE (MANT, MANHA, DCHI MANT | MANHA ave R76 NHA DCHI_NHA NHA, NGAYTHUE_BT, NGAYTHUE_ NGAYTHUE_8T NGAYTHUE_KT Pot 125 Lê Văn Sỹ, Q3 01/08/2012 01/09/2013 Sot PGI6 MACHUNHA | co4o 432 CMT8, QTB 01/09/2007 01/10/2011 150 C072 RSG | PGS 125 Lé Văn Sỹ, Q3 01/08/2007 61/07/2012 S0 C040 RS PGI6 432 CMT8, QTE 01//01/2012 01/01/2013 150% Rs PG 124 Tô Ký, Q12 01/01/2010 01/01/2014 200tz _THUE (MANHA, DCHI_ NHA, GIATHUE, MACHUNHA, TENCHUNHA) MANHA | DCHI_NHA = tuunngG GIATHUE — = PGI6 432 CMT8, QTE 150tr cov? pass | 124 TS Ky, Qu2 2008 co20 Kh g DH Khái niệm bổ sung: Thuộc tính phụ thuộc bắc cầu vào tập thuộc tính : TENCHUNHA A phụ thuộc bắc cầu vào X có điều kiện sau: NT Lan B.T Thanh N.TLan e X—YEF* (i) œ?z BT Than C020 N.TPhuong e Y—~AEF (ii) e A€(X UY) (iv) e ‘TT_THUE_NHA (MANT, MANHA, NGAYTHUE_BT, NGAYTHUE_» vẽ Y>X¢F (iii) MANT | MANHA | NGAYTHUE_BT | NGAYTHUE KT BT Thanh crm MT Phương DC2 I =" KT, GIATHUE, MACHUNHA, TENCHUNHA) GIATHUE | Po tL cre | PCH CR6 | PGI6 ŒRS | PG36 01/08/2012 01/09/2013 61/08/2007 61/08/2007 01/01/2012 01/01/2010 91/19/2011 01/07/2012 01/01/2013 01/01/2014 KHT DC2 27 CuuDuongThanCong com https://fb.com/tailieudientucntt Dạng chuẩn (DC3) " = Dang chuan (DC3) Khái niệm bổ sung: Thuộc tính phụ thuộc bắc cầu vào " tập thuộc tính Vi du: Cho F = {MN—OPRX; NO —M; khóa P —RY} —_P có phụ thuộc bắc cầu vào NO (NO — P)? NO ->M = NO ->MN : thỏa (¡) P > NO €F* (iii) d u: NHA_THUE l R phụ thuộc bắc cầu vào NO Xác định thuộc tính khóa quan hệ đạt dạng chuẩn " Xác định phụ thuộc hàm quan hệ gây thuộc tính ro 125 Lê Văn Sỹ, Q3 S0w PGI6 432 CMTB, QTB 150 C072 PGS 124 Tô Ký, Q12 200tz co20 N.T tan B.T.Thanh N.TPhương KI N g DH KHTN 30 NHA_ THUE (MANHA, DCHI_NHA, GIATHUE, MACHUNHA, TENCHUNHA) PK = {MANHA} DC2 -> TENCHUNHA | r« cos NT Lan PG16 432 CMT8, QTB 125 Lê Văn Sỹ, Q3 150tr co72 B.TThanh PG3% 124 Tơ Ký, Q12 200tr co20 N.T Phương Xóa pth MACHUNHA -> TENCHUNHA từ quan hệ NHÀ _THUE đưa vào quan hệ CHU NHA(MACHUNHA,TEN 50tr aN hệ NHA_THUE (MANHA, DCHI_NHA, GIATHUE, MACHUNHA) CHUNHA) MANHA mo DCHI_NHA 125 Lẻ Văn Sỹ, Q3 PGI6 432 CMT8, QTB Pau 124 Tô Ký, Q12 S0tr co4o coso NT 150tr coz2 co72 BT Thanh 200tr co20 co20 N.Y.Phuong DC3 Khoa CNTT - Trường ĐH Làn DC3 KHTN CuuDuongThanCong.com Dạng chuẩn (DC3) " Nhận xét: *- Mọi lược đồ quan hệ đạt DC3 đạt DC2 = Phu thuéc hàm bắc cầu nguyên nhân dẫn đến trùng lắp liệu làm cho lược đồ không đạt DC3 *_ TENCHUNHA MANHA -> MACHUNHA MACHUNHA -> TENCHUNHA => MANHA — TENCHUNHA (do bắt cầu) NGUOI_THUE: không thỏa DC2, TENCHUNHA phụ thuộc bắt cầu vào thuộc tính khóa " Xóa pth gay tính chất bắt cầu cách đưa vào quan n H1 TENCHUNHA) TENCHUNHA Ta có: khơng khóa bắt cầu vào khóa — MACHUNHA, MACHUNHA Biến đổi DC2 lên DC3 " MACHUNHA GIATHUE, GIATHUE F= { f1: MANHA — DCHI_NHA,GIA_THUE, MACHUNHA, f2: MACHUNHA — TENCHUNHA} NHA_THUE c6 dat DC3? I NHA_THUE: DCHI_NHA, ĐCHI NHA PK = {(MANHA} R€ NOP (iv) Biến đổi DC2 lên DC3 (MANHA, MANHA bắc cầu vào NO MN -> O = MN ->NO : khơng thỏa (iii) R có phụ thuộc bắc cầu vào NO (NO — R)? NO — MN va MN->P = NO -P (i) P > R (ii) Vi P không phụ thuộc MN —> P:thỏa (ii) —_ Một lược đồ R dạng chuẩn đạt dạng chuẩn tất thuộc tính khơng khóa khơng phụ thuộc bắt cầu vào DC3 không đạt xuất thuộc tính khơng https://fb.com/tailieudientucntt Dang chuan BCK (Boyce Codd Ken) " Một lược đồ đạt dạng chuẩn BCK xác định (pth) th) cócó vế vế trái trái đều làlà siêu siêu khóa/khóa khóa/khó " TT_THUE NGUOI_THUE (MANT, TENNT) MANT | TeEwwr khóa lược đồ suy lẫn cớc | tvaga | BCK * DC3 la dang chuẩn tối thiểu thiết ké CSDL CR6 | NHA (MANT, MANHA, NGAYTHUE 8T, NGAYTHUE_ KT) MANT | MANHA | NGAYTHUE BT | NGAYTHUE KT HVGia 01/08/2012 01/09/2013 z6 | nGi6 DC BCK E3 PG4 | PGA 01/09/2097 01/08/2007 01/10/2011 01/07/2012 PGI6 01/01/2012 01/01/2013 Po% 01/01/2010 01/01/2014 BCK Rs NHA_ THUE (MANHA, DCHI_NHA, GIATHUE, MACHUNHA) MANHA PGA PGI6 DCHI NHA 125 Lê Văn Sỹ, Q3 432 CMT8, QT8 PG 124 Tô Ký, Q12 GIATHUE | MACHUNHA so co4o 150tr œ72 200tr cozo CHU_NHA(MACHUNHA, TENCHUNHA) C040 C072 NT Lan 8.T Thanh co2o NT.Phương BCK Dạng chuẩn BCK (Boyce Codd Ken) Biến đổi DC3 lên DC BCK " Ví dụ: " PHONGVAN(MAUV, NGAYPV, GIOPV, MANV, MAPHG) Xác định phụ thuộc hàm A — B Q, A # B A khéng la siéu khéa/khéa MAUV | NGAvev 76 | 3405/2005 conv | a5 MANV | Marne Mà si "Phân rã quan hệ gốc Q thành hai quan hệ Q1 = {A,B}, Q2 = {tập thuộc tính cịn lại Q } - {B} mm nn = CRS6 13/05/2005 CRS6 1/07/2005 12:00 Tu 10:30 S65 G101 Tan " Lặp lại qui trình cho Q2 đến khơng thể tiếp tục S65 G201 " Quan hệ Q1 Q¡ phân rã từ Q2 quan hệ cuối đạt chuẩn BCK ¬ E={fl: MAUV, NGAYPV = GIOPV, MANY, MAPHG f2: MANV, NGAYPYV, GIOPV = MAUV f3: MAPHG, NGAYPV, GIOPV => MALV, f4: MANV, NGAYPV => MAPHG ` - - ; - “cà MANV } i Khéa chinh = {MAUV, NGAYPYV} Khéa tmg vién = { (MANV, NGAYPV, GIOPY); (MAPHG, NGAYPV, GIOPY)} => PHONGVAN: Không đạt DC BCK, PTH f4 có trái khơng khóa/khóa ứng viên mơn HTTT - Khoa CNTT - Trường ĐH KHTN 35 Bộ môn HT Khoa CN rường ĐH CuuDuongThanCong.com https://fb.com/tailieudientucntt Biến đổi DC3 lên DC BCK " , Dạng chuẩn BCK Ví dụ: " PHONGVAN(MAUV, NGAYPV, GIOPV, MANV, MAPHG) MAUV NGAYPV GIOPV | NV_PHONG DC3 many MANV | MAPHG (MANV,NGAYPV, NeAvev SS MAPHG) manae 13/05/2005 10:30 os G101 S65 | 13/G5/2005 101 | 13/05/2005 12:00 sas G101 G37 | ty0S/AG en CR?74 13/05/200S 12:00 sy? G10 SGS G201 1/07/2005 F={ } fl: MR: MAUV, MANV, f3: MAPHG 10:30 SS NGAYPY -* GIOPY, MANY, NGAYPV, GIOPV => MALV NGAYPV, GIOPV f4: MANV, NGAYPV = MAPHG —= MALV, ~ Mọi lược đồ quan hệ đạt DC BCK thuộc DC3 Mục tiêu trình thiết kế CSDL quan hệ DC3 BCK CRSé 1/07/2005 Nhận xét: - cm CR?6 CRS6 KHTN G201 MAPHG MANV PHONGVAN(MAUV,NGAYPV, MAUV NGAYPV GIOPV, MANV) GIOPV MANV C6 _ |1305/2065 10:30 CR?74 13/05/2005 1290 S37 1/07/2005 10:30 SGsS CRS6 CRS6 13/05/2005 1200 SGS +2 | Kh N ” NH KHTN đưa lược đồ

Ngày đăng: 11/12/2023, 08:39

Tài liệu cùng người dùng

Tài liệu liên quan