中文网站
  Advanced Search
Read the latest Blogs from IT professionals in the field. Read and write community created documents. Need IT help? Ask our staff. Connect with your peers. Check our Tech Shop for posters, books and software tools. Home

7.7 Database Systems: Alternative Approaches to Database Design (not to be covered)

1. We have taken the approach of starting with a single relation schema and decomposing it.

  • One goal was lossless-join decomposition.
  • For that, we decided we needed to talk about the join of all relations on the decomposed database.
  • Figure 6.20 shows a borrow relation decomposed in PJNF, where the loan amount is not yet determined.
  • If we compute the natural join, we find that all tuples referring to loan number 58 disappear.
  • In other words, there is no borrow relation corresponding to the relations of figure 6.20.
  • We call the tuples that disappear when the join is computed dangling tuples.
  • Formally, if r1(R1), r2(R2),...rn(Rn) are a set of relations, a tuple t of relation ri is a dangling tuple if
    t is not in the relation
    â…¡ ∝ ∝ . . . rn)
  • Dangling tuples may occur in practical applications.
  • They represent incomplete information.
  • The relation (r1 ∝... rn) is called a universal relation since it involves all the attributes in the universe defined by R1 ∪ R2 ∪. . . ∪Rn.
  • The only way to write a universal relation for our example is include null values.
  • Because of the diffculty in managing null values, it may be desirable to view the decomposed relations as representing the database rather than the universal relation.
  • We still might need null values if we tried to enter a loan number without a customer name, branch name, or amount.
  • In this case, a particular decomposition defines a restricted form of incomplete information that is acceptable in our database.

2. The normal forms we have defined generate good database design from the point of view of representation of incomplete information.

  • We need a loan number to represent any information in our example.
  • We do not want to store data for which the key attributes are unknown.
  • The normal forms we have defined do not allow us to do this unless we use null values.
  • Thus our normal forms allow representation of acceptable incomplete information via dangling tuples while prohibiting the storage of undesirable incomplete information.

3. Another point in our method of design is that attribute names must be unique in the universal relation.