Professional Documents
Culture Documents
1Q) Illustrate redundancy and the problems that it can cause. Give
Examples of insert, delete and update anomalies .
Ans:
Storing the Same information redundantly, that is, in more than one
place within a database, can lead to several problems.
Ex. All addresses in the same town have the same zip code
Anomalies
2. Update Anomalies:
3. Insertion Anomalies:
4. Deletion Anomalies:
2Q) Can null values help address these problems? Are they a complete
solution?
Null value is considering whether the use of null values can address
some of these problems. But they cannot provide a complete solution,
but they can provide some help.
Ans : Decompositions
No update anomalies:
Solution 2 :
RATING HOURLY-
WORKED
8 40
8 30
5 30
5 32
8 40
RATING HOURLY-
WAGES
8 10
5 7
Since for each value of A there is associated one and only one value of
B.
Example
The FD diagram of relation Shipment is
Here following functional dependencies exist in parts table
SP (Sno, Pno) - SP.QTY
X is a determinant
X determines Y
Y is functionally dependent on X
X→Y
X →Y is trivial if Y ⊆ X
Let R be
FDs in R include
ZipCode→AddressCity
ArtistName→BirthYear
Autobrand→Manufacturer, Engine type
Author, Title→PublDate
{A}→{A}
{A,B} →{A}
{A,B} →{B}
{A,B} →{A,B}
As an exalnple, consider:
We know that ssn → did holds, since ssn is the key, and FD did → lot is
given to hold. Therefore, in any legal instance of Workers, if two tuples
have the same ssn value, they must have the same did value , and
because they have the same did value, they must also have the same
lot value . Therefore, the FD ssn → lot also holds on Workers.
The set of all FDs implied by a given set F of FDs is called the closure of
F, denoted as F+. how we can infer, or compute, the closure of a given
set of FDs. The following rules, called Armstrong's Axioms, can be
applied repeatedly to infer all FDs implied by a set of FDs
FD Axioms
FD manipulations:
Consider Contracts:
Example
X Y Z
a b1 c1 -tuple1
a b2 c2 -tuple2
a b1 c1 -tuple3
a b2 c2 -tuple4
If X→→ Y then For each value of X is associated with set of Y values i.e
b1 ,b2.
If X→→ Z then For each value of X is associated with set of Z values i.e
c1 ,c2.
Example 2:
Replication: If X → Y, then X →→ Y.
Join Dependencies
Inclusion Dependencies
An inclusion dependency is a statement of the form that some columns
of relation are contained in other columns (usually of a second
relation).
A foreign key constraint is an example of an inclusion dependency;
the referring column(s) in one relation must be contained in the
primary key column (s) of the referenced relation.
Lossless-Join Decomposition
Let R be a relation schema and let F be set of FDs over R. A
decomposition of R into two schemas with attribute sets X and Y is said
to be a lossless-join decomposition with respect to F if, for every
instance r of R that satisfies the dependencies in F r.
S P D
S P P D S1 P1 D1
S P D
S1 P1 P1 D1 S2 P2 D2
S1 P1 D1
S2 P2 P2 D2 S3 P1 D3
S2 P2 D2
S3 P1 P1 D3 S1 P1 D3
S3 P1 D3
S3 P1 D1
Dependency-Preserving Decomposition
The new design has much to recommend it. we can change the lots
associated with a department by updating a single tuple in the second
relation (i.e., no update anomalies).
we can associate a lot with a department even if it currently has no
employees, without using null values (i.e., no deletion anomalies).
we can add an employee to a department by inserting a tuple to the
first relation even if there is no lot associated with the employee's
department (i.e., no insertion anomalies).
Suppose every sailor uses a unique credit card for reservations. This
constraint is expressed by the FD S→ C. This constraint indicates that,
in relation Reserves, we store the credit card number for a sailor as
often as we have reservations for that sailor, and we have redundancy
and potential update anomalies .
A solution is to decompose Reserves into two relations with attributes
SBD and SC. Intuitively, one holds information about reservations, and
the other holds information about credit cards.
Normalization
Update anomalies − If data items are scattered and are not linked
to each other properly, then it could lead to strange situations.
For example, when we try to update one data item having its
copies scattered over several places, a few instances get updated
properly while a few others are left with old values. Such
instances leave the database in an inconsistent state.
Course Content
Programming JAVA,C++
Web HTML,PHP,ASP
Programming JAVA
Programming C++
Web HTML,
Web PHP
Web ASP
Each attribute must contain only a single value from its pre-defined
domain
To bring this relation into third normal form, we break the relation into
two relations as follows −
Boyce-Codd Normal Form (BCNF)
and
Zip → City
NORMAL FORMS
Every relation in BCNF is also in 3NF, every relation in 3NF is also in 2NF,
and every relation in 2NF is in INF. A relation is in first normal, if every
field contains only atomic values, that is, no lists or sets.
Let R be a relation schema, let be the set of F'Ds given to hold over R,
X be a subset of the attributes of R, and A be attribute of R is in Boyce-
Codd. normal form if, for every FD X -> A in F, one of the following
statements is true:
Intuitively, in a BCNF relation, the only nontrivial dependencies are
those In which a key determines Some attribute(s).