Submit electronically your answers to the following textbook exercises: 7.18, 7.19, 7.21, and 7.24. For your diagramming, use some kind of drawing software that produces readable diagrams. For E-R diagrams, Dia is kind of nice. To draw the pictures below, I used shapes from both the "ER" section and the "UML" section of shapes within Dia. But you can use any kind of tool you like. I suppose you're welcome to draw it on paper and scan it if you wish, though make sure it is clear and readable.

Also answer the two questions below.


Consider this simple E-R diagram:

The typical way to transform this into a relational schema would be to create three tables:

Sometimes, the table AB can be eliminated by simply adding an appropriate column onto A or B instead. Consider the cases where the relationship AB is one-to-one, one-to-many, many-to-one, or many-to-many. Furthermore, consider the overlapping cases where there is or isn't a participation constraint on A, and there is or isn't a participation constraint on B. Explain which scenarios do and do not require you to have a separate table to represent the relationship AB. For the scenarios that do not require a third table, explain how you achieve representing the relationship via additional columns.


Suppose that entities B and C inherit from entity A. (The textbook would say that B and C are specializations of A.) Explain how to appropriately transform this into a relational schema. Your answer likely depends on whether or not the specialization is disjoint or overlapping; it likely also depends on whether the specialization is total or partial. (Definitions of all of these terms can be found in your textbook.)