Chương 9 cung cấp những kiến thức liên quan đến chuẩn hóa CSDL và phép phân rã. Sau khi học xong chương này người học sẽ nắm bắt được các vấn đề gặp phải khi tổ chức CSDL, chuẩn hóa cơ sở dữ liệu, các khái niệm liên quan đến dạng chuẩn,... Mời các bạn cùng tham khảo.
Trang 2Các v n đ g p ph i khi t ch c CSDL Các v n đ g p ph i khi t ch c CSDL ấn đề gặp phải khi tổ chức CSDL ấn đề gặp phải khi tổ chức CSDL ề gặp phải khi tổ chức CSDL ặp phải khi tổ chức CSDL ề gặp phải khi tổ chức CSDL ặp phải khi tổ chức CSDL ải khi tổ chức CSDL ải khi tổ chức CSDL ổ chức CSDL ổ chức CSDL ức CSDL ức CSDL
D th a d li u: ư ừa dữ liệu: ữ liệu: ệu:
Ví d : cho lụ: cho lược đồ quan hệ sau ược đồ quan hệ sauc đ quan h sauồ quan hệ sau ệ sau
Thi(MASV,HOTEN,MONH C,DIEMTHI) và m t th ỌC,DIEMTHI) và một thể ột thể ể
hi n trên lệ sau ược đồ quan hệ sauc đ quan h Thi:ồ quan hệ sau ệ sau
Trang 3Các v n đ g p ph i khi t ch c CSDL Các v n đ g p ph i khi t ch c CSDL ấn đề gặp phải khi tổ chức CSDL ấn đề gặp phải khi tổ chức CSDL ề gặp phải khi tổ chức CSDL ặp phải khi tổ chức CSDL ề gặp phải khi tổ chức CSDL ặp phải khi tổ chức CSDL ải khi tổ chức CSDL ải khi tổ chức CSDL ổ chức CSDL ổ chức CSDL ức CSDL ức CSDL
B t th ấn đề gặp phải khi tổ chức CSDL ường khi cập nhật: ng khi c p nh t: ập nhật: ập nhật:
– Do d th a nên khi c p nh t h tên c a m t ư ừa nên khi cập nhật họ tên của một ập nhật họ tên của một ập nhật họ tên của một ọ tên của một ủa một ột thể sinh viên trong m t b nào đó nh ng v n đ l i ột thể ột thể ư ẫn để lại ể ại
h tên cũ trong nh ng b khác ọ tên của một ững bộ khác ột thể
B t th ấn đề gặp phải khi tổ chức CSDL ường khi cập nhật: ng khi chèn (insertion anomaly)
– Không th bi t h tên c a m t sinh viên n u ể ết họ tên của một sinh viên nếu ọ tên của một ủa một ột thể ết họ tên của một sinh viên nếu
hi n t i sinh viên đó không d thi môn nào.ệ sau ại ự thi môn nào
B t th ấn đề gặp phải khi tổ chức CSDL ường khi cập nhật: ng khi xoá (deletion anomaly)
– Ngược đồ quan hệ sau ại c l i, khi xoá t t c các môn thi c a m t ất cả các môn thi của một ả các môn thi của một ủa một ột thể sinh viên, vô ý làm m t d u v t đ tìm ra h ất cả các môn thi của một ất cả các môn thi của một ết họ tên của một sinh viên nếu ể ọ tên của một tên c a sinh viên này ủa một
Trang 4Chu n hóa c s d li u Chu n hóa c s d li u ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã ơng 9 ở dữ liệu ữ liệu: ệu: ơng 9 ở dữ liệu ữ liệu: ệu:
Chu n hóa: ẩn hóa CSDL- Phép phân rã Là quá trình phân rã nh ng quan h ững bộ khác ệ sau
ch a đ t b ng cách chia nh nh ng thu c tính ư ại ằng cách chia nhỏ những thuộc tính ỏ những thuộc tính ững bộ khác ột thể
c a nó ra thành nh ng quan h nh h nủa một ững bộ khác ệ sau ỏ những thuộc tính ơn
Ví d : Phân rã lụ: cho lược đồ quan hệ sau ược đồ quan hệ sauc đ quan h Thi thành ba lồ quan hệ sau ệ sau ược đồ quan hệ sauc
đ quan h :ồ quan hệ sau ệ sau
– Sinhvien(MASV,HOTEN)
– MonHoc(MAMH, TENMON)
– Ketqua(MASV,MAMH,DIEMTHI)
Trang 5Chu n hóa c s d li u Chu n hóa c s d li u ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã ơng 9 ở dữ liệu ữ liệu: ệu: ơng 9 ở dữ liệu ữ liệu: ệu:
Trang 6chu n chu n ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
Thu c tính khoá/không khoá ộc tính khoá/không khoá
– A là m t thu c tính khoá n u A có tham gia vào ột thể ột thể ết họ tên của một sinh viên nếu
b t kỳ m t khoá nào c a quan h , ngất cả các môn thi của một ột thể ủa một ệ sau ược đồ quan hệ sau ại c l i A
g i là thu c tính không khoá.ọ tên của một ột thể
Ví d :ụ: cho lược đồ quan hệ sau
Cho lược đồ quan hệ sauc đ quan h Q(ABC) và t p ph thu c ồ quan hệ sau ệ sau ập nhật họ tên của một ụ: cho lược đồ quan hệ sau ột thể
hàm F={ A→ B; A → C; B → A}
Có hai khóa là A và B khi đó thu c tính khoá là A, ột thể B; thu c tính không khóa là: Cột thể
Trang 7thu c hàm đ y đ thu c hàm đ y đ ộc tính phụ thuộc đầy đủ-phụ ộc tính phụ thuộc đầy đủ-phụ ầy đủ-phụ ầy đủ-phụ ủ-phụ ủ-phụ
A là một thuộc tính phụ thuộc đầy đủ vào tập thuộc tính X nếu X →A là một phụ thuộc hàm đầy đủ
Phụ thuộc hàm X →A gọi là đầy đủ là không tồn tại X' X sao cho X' → A F+
Ví dụ thuộc đầy đủ-phụ : Cho Q(ABC) và F={ A → B; A→ C; AB → C}
– A →B: A → C là các ph thu c hàm đ y đ ụ: cho lược đồ quan hệ sau ột thể ầy đủ ủa một
– AB → C không là ph thu c hàm đ y đ vì có ụ: cho lược đồ quan hệ sau ột thể ầy đủ ủa một
A → C.
Chú ý r ng, m t ph thu c hàm mà v trái ch có m t ằng, một phụ thuộc hàm mà vế trái chỉ có một ột phụ thuộc hàm mà vế trái chỉ có một ụ thuộc hàm mà vế trái chỉ có một ột phụ thuộc hàm mà vế trái chỉ có một ế trái chỉ có một ỉ có một ột phụ thuộc hàm mà vế trái chỉ có một thu c tính là ph thu c hàm đ y đ ột phụ thuộc hàm mà vế trái chỉ có một ụ thuộc hàm mà vế trái chỉ có một ột phụ thuộc hàm mà vế trái chỉ có một ầy đủ ủ.
Trang 8ph thu c hàm tr c ti p ph thu c hàm tr c ti p ụ thuộc đầy đủ-phụ ụ thuộc đầy đủ-phụ ộc tính phụ thuộc đầy đủ-phụ ộc tính phụ thuộc đầy đủ-phụ ực tiếp- ực tiếp- ến dạng ến dạng
A là một thuộc tính phụ thuộc trực tiếp vào tập thuộc tính X nếu X →A , không tồn tại Z U, X Z, ZA thì XA là phụ thuộc trực tiếp Nếu ngược lại thì được gọi là phụ thuộc hàm bắc cầu
Ví d : Cho Q(ABC) F={ A → B; A→ C; C → B} ụ: cho lược đồ quan hệ sau
– C →B; A → C là các ph thu c hàm tr c ti p ụ: cho lược đồ quan hệ sau ột thể ự thi môn nào ết họ tên của một sinh viên nếu
– A → B là ph thu c hàm b c c u vì t n t i C ụ: cho lược đồ quan hệ sau ột thể ắc cầu vì tồn tại C ầy đủ ồ quan hệ sau ại Q
A → C, C → B
Trang 9D ng chu n 1 (1NF) D ng chu n 1 (1NF) ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
L ược đồ quan hệ Q được gọi là đạt dạng c đ quan h Q đ ồ quan hệ Q được gọi là đạt dạng ệu: ược đồ quan hệ Q được gọi là đạt dạng c g i là đ t d ng ọi là đạt dạng ạng ạng chu n1 (1NF) n u và ch n u toàn b các ẩn hóa CSDL- Phép phân rã ến dạng ỉ nếu toàn bộ các ến dạng ộc tính phụ thuộc đầy đủ-phụ thu c tính c a Q đ u mang giá tr đ n ộc tính phụ thuộc đầy đủ-phụ ủ-phụ ề gặp phải khi tổ chức CSDL ị đơn ơng 9
Ví d : xét ụ: cho lược đồ quan hệ sau quan h -không đ t chu n 1 (?) ệ -không đạt chuẩn 1 (?) ạt chuẩn 1 (?) ẩn 1 (?)
Trang 10D ng chu n 1 (1NF) D ng chu n 1 (1NF) ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
– Đ a quan h trên v d ng chu n 1 nh sauư ệ sau ề dạng chuẩn 1 như sau ại ẩn 1 như sau ư
Trang 11D ng chu n 2 (2NF) D ng chu n 2 (2NF) ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
M t l ộc tính phụ thuộc đầy đủ-phụ ược đồ quan hệ Q được gọi là đạt dạng c đ quan h Q đ t d ng chu n 2 n u ồ quan hệ Q được gọi là đạt dạng ệu: ạng ạng ẩn hóa CSDL- Phép phân rã ến dạng
Q đ t d ng chu n 1 và t t c các thu c tính ạng ạng ẩn hóa CSDL- Phép phân rã ấn đề gặp phải khi tổ chức CSDL ải khi tổ chức CSDL ộc tính phụ thuộc đầy đủ-phụ không khoá c a Q đ u ph thu c đ y đ vào ủ-phụ ề gặp phải khi tổ chức CSDL ụ thuộc đầy đủ-phụ ộc tính phụ thuộc đầy đủ-phụ ầy đủ-phụ ủ-phụ khoá.
– N u m t lết họ tên của một sinh viên nếu ột thể ược đồ quan hệ sauc đ quan h không đ t chu n 2 ồ quan hệ sau ệ sau ại ẩn 1 như sauthì ta nói nó đ t d ng chu n 1.ại ại ẩn 1 như sau
Ví d : Cho Q(A,B,C,D) và F={ AB → CD; B → D; C→ A}ụ: cho lược đồ quan hệ sau
– Khoá là {A,B} và {B,C}
– D là thu c tính không khoá; AB → D không là ột thể
ph thu c hàm đ y đ vì có B → D ụ: cho lược đồ quan hệ sau ột thể ầy đủ ủa một
– V y Q đ t chu n 1.ập nhật họ tên của một ại ẩn 1 như sau
Trang 12D ng chu n 2 (2NF) D ng chu n 2 (2NF) ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
Ví d : Xác đ nh d ng chu n c a lụ: cho lược đồ quan hệ sau ịnh dạng chuẩn của lược đồ quan hệ ại ẩn 1 như sau ủa một ược đồ quan hệ sauc đ quan h ồ quan hệ sau ệ sausau Q(GMVNHP) v i F={G→N;G→H; G→P; M→V; ới F={G→N;G→H; G→P; M→V; NHP→M}
– Khoá c a Q là G.ủa một
– Thu c tính không khoá là M,V,N,H,P.ột thể
– Do các ph thu c hàm G → M; G → V; G → N; ụ: cho lược đồ quan hệ sau ột thể
G → H; G → P là các ph thu c hàm đ y đ , nên ụ: cho lược đồ quan hệ sau ột thể ầy đủ ủa một
lược đồ quan hệ sauc đ quan h Q đ t d ng chu n 2ồ quan hệ sau ệ sau ại ại ẩn 1 như sau
Trang 13D ng chu n 2 (2NF) D ng chu n 2 (2NF) ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
Gi i thu t ki m tra l ải khi tổ chức CSDL ập nhật: ểm tra lược đồ quan hệ đạt 2NF ược đồ quan hệ Q được gọi là đạt dạng c đ quan h đ t 2NF ồ quan hệ Q được gọi là đạt dạng ệu: ạng
• Cho lược đồ quan hệ sauc đ quan h Q, t p ph thu c hàm F ồ quan hệ sau ệ sau ập nhật họ tên của một ụ: cho lược đồ quan hệ sau ột thể – B1: Tìm t t c khóa K c a Q ất cả các môn thi của một ả các môn thi của một ủa một
– B2: V i m i khóa K, tìm bao đóng c a t t c t p ới F={G→N;G→H; G→P; M→V; ỗi khóa K, tìm bao đóng của tất cả tập ủa một ất cả các môn thi của một ả các môn thi của một ập nhật họ tên của một con th c s S c a K.ự thi môn nào ự thi môn nào ủa một
– B3: N u có S+ ch a thu c tính không khóa thì Q ết họ tên của một sinh viên nếu ứa thuộc tính không khóa thì Q ột thể không đ t ại 2NF, ngược đồ quan hệ sau ại c l i thì Q đ t 2NFại
Trang 14D ng chu n 2 (2NF) D ng chu n 2 (2NF) ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
đ t 2 NF khôngại
D là thu c tính không khóaột thể Q không đ t 2NFại
Trang 15D ng chu n 2 (2NF) D ng chu n 2 (2NF) ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
H qu :ệ sau ả các môn thi của một
– Q đ t 2NF n u Q đ t 1NF và t p thu c tính ại ết họ tên của một sinh viên nếu ại ập nhật họ tên của một ột thể không khoá c a Q b ng r ng.ủa một ằng cách chia nhỏ những thuộc tính ỗi khóa K, tìm bao đóng của tất cả tập
– N u khoá c a quan h có m t thu c tính thì ết họ tên của một sinh viên nếu ủa một ệ sau ột thể ột thể quan h đó ít nh t đ t chu n 2.ệ sau ất cả các môn thi của một ại ẩn 1 như sau
Ví d : Q(ABCDEH) F={A → E; C → D; E → DH}ụ: cho lược đồ quan hệ sau
Khoá c a Q là K={ABC}ủa một
D là thu c tính không khoá và C →D , vì C là t p ột thể ập nhật họ tên của một con th c s c a khoá nên Q không đ t 2NFự thi môn nào ự thi môn nào ủa một ại
Trang 16D ng chu n 3 (3NF) D ng chu n 3 (3NF) ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
Đ nh nghĩa 1: ị đơn. M t lột thể ược đồ quan hệ sauc đ quan h Q đ t d ng ồ quan hệ sau ệ sau ại ại chu n 3 n u m i ph thu c hàm X→Aẩn 1 như sau ết họ tên của một sinh viên nếu ọ tên của một ụ: cho lược đồ quan hệ sau ột thể F+ ( F là
t p ph thu c không hi n nhiên đ nh nghĩa trên ập nhật họ tên của một ụ: cho lược đồ quan hệ sau ột thể ể ịnh dạng chuẩn của lược đồ quan hệ
Q, A là thu c tính đ n, X là t p thu c tính con c a ột thể ơn ập nhật họ tên của một ột thể ủa một
t p Q), thì m t trong hai đi u ki n sau đập nhật họ tên của một ột thể ề dạng chuẩn 1 như sau ệ sau ược đồ quan hệ sauc tho :ả các môn thi của một – Ho c X là m t siêu khoá c a Qặc X là một siêu khoá của Q ột thể ủa một
– Ho c A là m t thu c tính khoáặc X là một siêu khoá của Q ột thể ột thể
Nh n xét ận xét : N u Q đ t chu n 3 thì Q đ t chu n 2ết họ tên của một sinh viên nếu ại ẩn 1 như sau ại ẩn 1 như sau
Trang 17D ng chu n 3 (3NF) D ng chu n 3 (3NF) ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
Ví d : cho R(C,S,Z), F = {CS →Z, Z →C}ụ: cho lược đồ quan hệ sau
– Khóa d tuy n: CS và SZ ự thi môn nào ể
– T t c các thu c tính đ u là thu c tính khóaất cả các môn thi của một ả các môn thi của một ột thể ề dạng chuẩn 1 như sau ột thể
Trang 18D ng chu n 3 (3NF) D ng chu n 3 (3NF) ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
Đ nh nghĩa 2: ị đơn. M t lột thể ược đồ quan hệ sauc đ quan h R đ t d ng ồ quan hệ sau ệ sau ại ại chu n 3 (3NF) n u nó đ t d ng chu n 2 và ẩn 1 như sau ết họ tên của một sinh viên nếu ại ại ẩn 1 như sau không
có thu c tính không khóa ph thu c b c c u vào ột thể ụ: cho lược đồ quan hệ sau ột thể ắc cầu vì tồn tại C ầy đủ khóa chính
Ví d : R (Cust_ID, Name, Salesperson, Region)ụ: cho lược đồ quan hệ sau
F = { Cust_ID → {Name, Salesperson, Region},
Salesperson → Region }
– Khóa K = Cust_ID
– Ph thu c hàm b c c u:ụ: cho lược đồ quan hệ sau ột thể ắc cầu vì tồn tại C ầy đủ
Trang 19D ng chu n 3 (3NF) D ng chu n 3 (3NF) ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
Gi i thu t ki m tra l ải khi tổ chức CSDL ập nhật: ểm tra lược đồ quan hệ đạt 2NF ược đồ quan hệ Q được gọi là đạt dạng c đ quan h đ t 3NF ồ quan hệ Q được gọi là đạt dạng ệu: ạng
Cho lược đồ quan hệ sauc đ quan h Q, t p ph thu c hàm F ồ quan hệ sau ệ sau ập nhật họ tên của một ụ: cho lược đồ quan hệ sau ột thể
– B1: Tìm t t c khóa c a Q ất cả các môn thi của một ả các môn thi của một ủa một
– B2: T o m t t p ph thu c hàm tại ột thể ập nhật họ tên của một ụ: cho lược đồ quan hệ sau ột thể ươnng đươnng (F1tt) v i v ph i c a các ph thu c hàm ch ới F={G→N;G→H; G→P; M→V; ết họ tên của một sinh viên nếu ả các môn thi của một ủa một ụ: cho lược đồ quan hệ sau ột thể ỉ
ch a m t thu c tính.ứa thuộc tính không khóa thì Q ột thể ột thể
– B3: N u m i ph thu c hàm Xết họ tên của một sinh viên nếu ọ tên của một ụ: cho lược đồ quan hệ sau ột thể A F1tt v i A ∈ F1tt với A∉ ới F={G→N;G→H; G→P; M→V; ∉
X, X là siêu khóa ho c A là thu c tính khóa thì Q ặc X là một siêu khoá của Q ột thể
đ t 3NF, ngại ược đồ quan hệ sau ại c l i thì Q không đ t 3NFại
Trang 20D ng chu n 3 (3NF) D ng chu n 3 (3NF) ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
Ví d : Cho Q(ABCD) và t p ph thu c hàm ụ: cho lược đồ quan hệ sau ập nhật họ tên của một ụ: cho lược đồ quan hệ sau ột thể
F=(AB → C ; D → B; C → ABD)– K1=[AB]; K2=[AD]; K3=[C] là các khoá, v y Q ập nhật họ tên của một không có thu c tính không khoá nên Q đ t ột thể ại chu n 3ẩn 1 như sau
H qu :ệ sau ả các môn thi của một N u l ế trái chỉ có một ược đồ quan hệ Q, F mà Q không có c đ quan h Q, F mà Q không có ồ quan hệ Q, F mà Q không có ệ -không đạt chuẩn 1 (?) thu c tính không khoá thì Q đ t chu n 3 ột phụ thuộc hàm mà vế trái chỉ có một ạt chuẩn 1 (?) ẩn 1 (?)
Trang 21D ng chu n 3 (3NF) D ng chu n 3 (3NF) ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
Ví d : ụ thuộc đầy đủ-phụ Xác đ nh d ng chu n c a lịnh dạng chuẩn của lược đồ quan hệ ại ẩn 1 như sau ủa một ược đồ quan hệ sauc đ quan h ồ quan hệ sau ệ sauQ(NGPM), t p ph thu c hàm F={NGP→M; M→P}ập nhật họ tên của một ụ: cho lược đồ quan hệ sau ột thể – Khoá c a Q là {NGP}, {NGM} ủa một
– NGP → M có v trái là siêu khoáết họ tên của một sinh viên nếu
– M → P có v ph i là thu c tính khoá.ết họ tên của một sinh viên nếu ả các môn thi của một ột thể
Q đ t chu n 3 ạng ẩn hóa CSDL- Phép phân rã
Trang 22D ng chu n 3 (3NF) D ng chu n 3 (3NF) ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
Ví d : cho Q(A,B,C,D) F={AB →C; D→B; C→ABD}, ụ: cho lược đồ quan hệ sau
Q đ t 3NF?, TN= TG={ABCD}ại ∅ TG={ABCD}
Trang 23D ng chu n 3 (3NF) D ng chu n 3 (3NF) ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã
K1 = {AB}; K2 = {AD}; K3 ={C} , m i ph thu c ọ tên của một ụ: cho lược đồ quan hệ sau ột thể hàm XAF v i A là thu c tính khóa ới F={G→N;G→H; G→P; M→V; ột thể Q đ t 3NF ại
Trang 24D ng chu n BCNF D ng chu n BCNF ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã (Boyce-Codd) (Boyce-Codd)
M t lột thể ược đồ quan hệ sauc đ quan h Q d ng chu n BCNF n u ồ quan hệ sau ệ sau ở dạng chuẩn BCNF nếu ại ẩn 1 như sau ết họ tên của một sinh viên nếu
v i m i ph thu c hàm không hi n nhiên X → A ới F={G→N;G→H; G→P; M→V; ỗi khóa K, tìm bao đóng của tất cả tập ụ: cho lược đồ quan hệ sau ột thể ể
F thì X là m t siêu khoá c a Q.ột thể ủa một
– Nh n xét ận xét : N u Q đ t BCNF thì Q đ t 3NF ế trái chỉ có một ạt chuẩn 1 (?) ạt chuẩn 1 (?)
Ví d : Xác đ nh d ng chu n c a lụ: cho lược đồ quan hệ sau ịnh dạng chuẩn của lược đồ quan hệ ại ẩn 1 như sau ủa một ược đồ quan hệ sauc đ quan h ồ quan hệ sau ệ sausau Q(ACDEIB) F={ACD→EBI;CE→AD}
– Q có hai khoá là: ACD và CE
– Các ph thu c hàm c a F đ u có v trái là siêu ụ: cho lược đồ quan hệ sau ột thể ủa một ề dạng chuẩn 1 như sau ết họ tên của một sinh viên nếu khoá, nên Q đ t d ng chu n BC.ại ại ẩn 1 như sau
Trang 25D ng chu n BCNF D ng chu n BCNF ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã (Boyce-Codd) (Boyce-Codd)
Gi i thu t ki m tra BCNF ải khi tổ chức CSDL ập nhật: ểm tra lược đồ quan hệ đạt 2NF
– B1: Tìm t t c khóa c a Q ất cả các môn thi của một ả các môn thi của một ủa một
– B2: T o t p ph thu c hàm tại ập nhật họ tên của một ụ: cho lược đồ quan hệ sau ột thể ươnng đươnng (F1tt)
mà v ph i c a các ph thu c hàm ch ch a ết họ tên của một sinh viên nếu ả các môn thi của một ủa một ụ: cho lược đồ quan hệ sau ột thể ỉ ứa thuộc tính không khóa thì Q
m t thu c tính.ột thể ột thể
– B3: N u m i ph thu c hàm Xết họ tên của một sinh viên nếu ọ tên của một ụ: cho lược đồ quan hệ sau ột thể A F1tt v i ∈ F1tt với A∉ ới F={G→N;G→H; G→P; M→V;
A X, X là siêu khóa, thì Q đ t chu n BCNF, ∉ ại ẩn 1 như sau
ngược đồ quan hệ sau ại c l i thì không đ tại
Trang 26D ng chu n BCNF D ng chu n BCNF ạng ạng ẩn hóa CSDL- Phép phân rã ẩn hóa CSDL- Phép phân rã (Boyce-Codd) (Boyce-Codd)
chu n ẩn 1 như sau BCNF?
V trái c a F ết họ tên của một sinh viên nếu ủa một tt đ u là siêu khóa ề dạng chuẩn 1 như sau Q đ t BCNFại
Trang 27Bài t p Bài t p ập nhật: ập nhật:
1.Cho bi t d ng chu n cao nh t c a các LDQH sau: ết họ tên của một sinh viên nếu ại ẩn 1 như sau ất cả các môn thi của một ủa một
a) Q(ABCDEG) F = {A ->BC, C->DE, E->G}
b) Q(ABCDEGH) F = {C->AB, D->E, B->G}
c) Q(ABCDEGH) F = {A->BC, D->E, H->G}
d) Q(ABCDEG) F = {AB->C, C->B, ABD->E, G->A}
e) Q(ABCDEGHI) F = {AC->B, BI->ACD, ABC->D
H->I , ACE->BCG, CG->A}
2.Cho Q(CDEGHK) và F = {CK->H, C->D,E->C, E->G, CK->E} a) Ch ng minh EK->DH ứa thuộc tính không khóa thì Q
b) Tìm t t c các khóa c a Q ất cả các môn thi của một ả các môn thi của một ủa một
c) Xác đ nh d ng chu n cao nh t c a Q ịnh dạng chuẩn của lược đồ quan hệ ại ẩn 1 như sau ất cả các môn thi của một ủa một
Trang 28– M i Ri là t p con c a R ( v i i = 1,2 ỗi khóa K, tìm bao đóng của tất cả tập ập nhật họ tên của một ủa một ới F={G→N;G→H; G→P; M→V; …,n)
Ví d : L ụ: cho lược đồ quan hệ sau ược đồ quan hệ sau c đ quan h R(x, y, z) có th có 2 t p con: ồ quan hệ sau ệ sau ể ập nhật họ tên của một R1(x, z) và R2(y, z), n u h i R1 và R2, ta đ ết họ tên của một sinh viên nếu ột thể ược đồ quan hệ sau c
R = R1 R2
Trang 29Phân rã (Decompositions)
M c đích c a vi c phân rã: ụ thuộc đầy đủ-phụ ủ-phụ ệu:
– Gi m s d th a b ng cách phân rã m t quan ả các môn thi của một ự thi môn nào ư ừa nên khi cập nhật họ tên của một ằng cách chia nhỏ những thuộc tính ột thể
h thành nhi u quan h d ng chu n cao h n.ệ sau ề dạng chuẩn 1 như sau ệ sau ở dạng chuẩn BCNF nếu ại ẩn 1 như sau ơn
V n đ v i vi c phân rã: ấn đề gặp phải khi tổ chức CSDL ề gặp phải khi tổ chức CSDL ới việc phân rã: ệu:
– N u Rết họ tên của một sinh viên nếu R1R2… Rn thì phép phân rã là m t ất cả các môn thi của một mát thông tin
Trang 30Phân rã (Decompositions)
Ví d : ụ: cho lược đồ quan hệ sau
Trang 31Phân rã (Decompositions)
Phép phân rã không b o toàn thông tinả các môn thi của một
Trang 32Phân rã (Decompositions)
S phân rã m t thông tin: ực tiếp- ấn đề gặp phải khi tổ chức CSDL
Trang 33Phân rã (Decompositions)
S phân rã m t thông tin: ực tiếp- ấn đề gặp phải khi tổ chức CSDL
Trang 34Phân rã (Decompositions)
S phân rã m t thông tin: ực tiếp- ấn đề gặp phải khi tổ chức CSDL
Trang 35(LossLess-join decomposition) (LossLess-join decomposition)
Phép phân rã b o toàn thông tin: ải khi tổ chức CSDL Cho lược đồ quan hệ sauc đ ồ quan hệ sauquan h R và t p ph thu c hàm F Phép phân rã R ệ sau ập nhật họ tên của một ụ: cho lược đồ quan hệ sau ột thể thành hai lược đồ quan hệ sauc đ v i t p thu c tính X và Y đồ quan hệ sau ới F={G→N;G→H; G→P; M→V; ập nhật họ tên của một ột thể ược đồ quan hệ sauc
g i là phép phân rã b o toàn thông tin đ i v i F ọ tên của một ả các môn thi của một ối với F ới F={G→N;G→H; G→P; M→V;
n u m i th hi n r c a R th a mãn F ta luôn có:ết họ tên của một sinh viên nếu ọ tên của một ể ệ sau ủa một ỏ những thuộc tính
X ( r ) Y( r )= r
Trang 36
(LossLess-join decomposition) (LossLess-join decomposition)
Ví d : ụ thuộc đầy đủ-phụ
Trang 37(LossLess-join decomposition) (LossLess-join decomposition)
Thu t toán ki m tra phân rã b o toàn thông ập nhật: ểm tra lược đồ quan hệ đạt 2NF ải khi tổ chức CSDL tin
Cho lược đồ quan hệ sauc đ quan h R, t p ph thu c hàm F và ồ quan hệ sau ệ sau ập nhật họ tên của một ụ: cho lược đồ quan hệ sau ột thể phép phân rã c a R: D={R1, R2, …, Rm} ủa một
– Bưới F={G→N;G→H; G→P; M→V; c 1: L p ma tr n m hàng ng v i m lập nhật họ tên của một ập nhật họ tên của một ứa thuộc tính không khóa thì Q ới F={G→N;G→H; G→P; M→V; ược đồ quan hệ sauc đ ồ quan hệ saucon Ri và n c t ng v i n thu c tính c a R Ph n ột thể ứa thuộc tính không khóa thì Q ới F={G→N;G→H; G→P; M→V; ột thể ủa một ầy đủ
t (i,j)c a ma tr n đử (i,j)của ma trận được xác định như sau: ủa một ập nhật họ tên của một ược đồ quan hệ sauc xác đ nh nh sau:ịnh dạng chuẩn của lược đồ quan hệ ư
• (i,j) = aj n u Aj Riết họ tên của một sinh viên nếu ∈ F1tt với A∉
• (i,j)=bij n u Aj Ri trong đó, aj, bij Dom(Aj)ết họ tên của một sinh viên nếu ∉ ∈ F1tt với A∉
Trang 38(LossLess-join decomposition) (LossLess-join decomposition)
– B ưới F={G→N;G→H; G→P; M→V; c 2: Bi n đ i b ng ết họ tên của một sinh viên nếu ổi bảng ả các môn thi của một
• V i m i FD X ới F={G→N;G→H; G→P; M→V; ỗi khóa K, tìm bao đóng của tất cả tập Y n u có hai hàng gi ng nhau trên ết họ tên của một sinh viên nếu ối với F
X và khác nhau trên Y thì làm cho hai hàng đó cũng gi ng nhau trên Y ( u tiên làm b ng ký ối với F ư ằng cách chia nhỏ những thuộc tính
hi u là aj) ệ sau
• Ti p t c v i các ph thu c hàm trong b ng (k ết họ tên của một sinh viên nếu ụ: cho lược đồ quan hệ sau ới F={G→N;G→H; G→P; M→V; ụ: cho lược đồ quan hệ sau ột thể ả các môn thi của một ể
c vi c l p l i các ph thu c hàm đã áp d ng) ả các môn thi của một ệ sau ập nhật họ tên của một ại ụ: cho lược đồ quan hệ sau ột thể ụ: cho lược đồ quan hệ sau cho đ n khi không còn áp d ng đ ết họ tên của một sinh viên nếu ụ: cho lược đồ quan hệ sau ược đồ quan hệ sau c n a ững bộ khác
• M c đích c a vi c bi n đ i b ng là đ thu ụ: cho lược đồ quan hệ sau ủa một ệ sau ết họ tên của một sinh viên nếu ổi bảng ả các môn thi của một ể
đ ược đồ quan hệ sau c b ng cu i cùng, xem nh m t quan h ả các môn thi của một ối với F ư ột thể ệ sau
th a t p F ỏ những thuộc tính ập nhật họ tên của một
Trang 39(LossLess-join decomposition) (LossLess-join decomposition)
– Bưới F={G→N;G→H; G→P; M→V; c 3: Xem b ng k t quả các môn thi của một ết họ tên của một sinh viên nếu ả các môn thi của một
• N u trong b ng cu i cùng có ch a hàng g m ết họ tên của một sinh viên nếu ả các môn thi của một ối với F ứa thuộc tính không khóa thì Q ồ quan hệ sautoàn ký hi u a thì k t lu n phép phân rã D= ệ sau ết họ tên của một sinh viên nếu ập nhật họ tên của một (R1,R2…,Rm) là b o toàn thông tin, ngả các môn thi của một ược đồ quan hệ sau ại c l i thì D là phân rã m t thông tinất cả các môn thi của một
Trang 40(LossLess-join decomposition) (LossLess-join decomposition)
VD: Phân rã lược đồ quan hệ sauc đ quan h Q(ABCDE) thành ồ quan hệ sau ệ sauQ1(AD), Q2(AB), Q3(BE), Q4(CDE), Q5(AE) và t p ập nhật họ tên của một
F={A→C, B→C, A→D, DE→C, CE→A}
– Phép phân rã trên có b o toàn thông tin không?ả các môn thi của một