Download presentation
Presentation is loading. Please wait.
Published byAnis Miles Modified over 8 years ago
1
R EVIEW
2
22 Exam Su 3:30PM - 6:30PM 2010/12/12 Room C9000
3
A LGEBRA
4
44 R ELATIONAL A LGEBRA O PERATIONS Basic operations Selection ( ) Selects a subset of rows from relation. Projection ( ) Deletes unwanted columns from relation. Cartesian product ( ) Combine two relations. Set-difference ( ) Tuples in relation 1, but not in relation 2. Union ( ) Tuples in relation 1 or in relation 2.
5
55 Suppliers (S) sid sname address Parts (P) pid pname color Catalog (C) sid pid cost
6
66 Suppliers (S) sid sname address Parts (P) pid pname color Catalog (C) sid pid cost
7
77 Suppliers (S) sid sname address Parts (P) pid pname color Catalog (C) sid pid cost
8
88 Suppliers (S) sid sname address Parts (P) pid pname color Catalog (C) sid pid cost
9
99 Suppliers (S) sid sname address Parts (P) pid pname color Catalog (C) sid pid cost
10
10 Suppliers (S) sid sname address Parts (P) pid pname color Catalog (C) sid pid cost
11
F UNCTIONAL D EPENDENCY
12
12 F UNCTIONAL D EPENDENCIES (FD S ) A functional dependency X Y holds over relation R if, for every allowable instance r of R: given two tuples in r, if the X values agree, then the Y values must also agree. (X and Y are sets of attributes.) An FD is a statement about all allowable relations. Must be identified based on semantics of application. Given some allowable instance r1 of R, we can check if it violates some FD f, but we cannot tell if f holds over R! K is a candidate key for R means that K R However, K R does not require K to be minimal!
13
13 E XAMPLE (C ONTD.) Problems due to R W : Update anomaly : Can we change W in just the 1st tuple of SNLRWH? Insertion anomaly : What if we want to insert an employee and don’t know the hourly wage for his rating? Deletion anomaly : If we delete all employees with rating 5, we lose the information about the wage for rating 5! Hourly_Emps2 Wages
14
14 R EASONING A BOUT FD S (C ONTD.) Couple of additional rules (that follow from AA): Union : If X Y and X Z, then X YZ Decomposition : If X YZ, then X Y and X Z Example: Contracts( cid,sid,jid,did,pid,qty,value ), and: C is the key: C CSJDPQV Project purchases a part using single contract: JP C Dept purchases at most a part from a supplier:SD P JP C, C CSJDPQV imply JP CSJDPQV SD P implies SDJ JP SDJ JP, JP CSJDPQV imply SDJ CSJDPQV
15
15 Suppose that relation R contains attributes A1... An. A decomposition of R consists of replacing R by two or more relations such that: Each new relation scheme contains a subset of the attributes of R (and no attributes that do not appear in R), and Every attribute of R appears as an attribute of one of the new relations. e.g., A B, ABCD E, EF GH, ACDF EG has the following minimal cover: A B, ACD E, EF G and EF H
16
16 E XAMPLES ABC 123 423 533 534 Does A B hold? Don’t know Does BC A hold? Does not hold (first two tuples) Does B C hold? Does not hold (last 2 tuples)
17
17 E XAMPLES Relation: ABCDE Dependencies: A B C D Decompose to?
18
18 E XAMPLES Relation: ABCD Dependencies: C D C A B C What is the candidate key? B
19
19 E XAMPLES Relation: ABCD Dependencies: B C D A What is the candidate key? BD
20
20 E XAMPLES Relation: ABCD Dependencies: ABC D D A What is the candidate key? ABC BCD
21
21 E XAMPLES Relation: ABCD Dependencies: AB C AB D C A D B What is the candidate key? AB BC CD AD
22
22 E XAMPLES Suppose you are given a relation R(A,B,C,D) Dependencies AB C C A C D What is the candidate key? AB BC Decomposed into ACD and BC. Good? Lossless. Can join back to ABCD. Dependency AB C is not preserved.
23
23 E XAMPLES Suppose you are given a relation R(A,B,C,D) Dependencies A BC C AD What is the candidate key? A C Decomposed into ABC and AD. Good? No. A is key, so no need to decompose. Dependency C AD is not preserved.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.