Chapter 6 Flashcards
What does it mean to say that constructing an ERD is an iterative process?
It means that ERD models could be refined as many times as needed
Why decompose a compound attribute into smaller attributes?
Because it makes the search for embedded data easier
When is it appropriate to expand an attribute?
When additional details about an attribute are needed
Why transform an entity type into two entity types and a relationship?
Add a finer level of detail about an entity, usually a two-level structure
Why transform a weak entity type to a stronger entity type?
Remove combined foreign keys after conversion to tables
Why transform an entity type into a generalization hierarchy?
When there are multiple attributes that do not apply to all entities and when there is a classification of entities
Why add a history to an attribute or relationship?
For detailed legal requirements and strategic reporting
What changes to an ERD are necessary when expanding an attribute?
The changes require the replacement of an attribute with an entity type and a 1-M relationship.
What changes when splitting a compound attribute?
An attribute is replaced with a collection of attributes
What changes when expanding an entity type?
An entity type is split into two entity types and a relationship
What changes when transforming a weak entity type to a strong entity type?
A weak entity type changes into a regular entity type and converts associated identifying relationship into regular (non-identifying) relationships
What changes when adding unlimited history to an attribute or a relationship? what changes when replacing an entity type with a generalization hierarchy?
For attribute history, an attribute is replaced with a weak entity type and an identifying 1-M relationship. For 1-M relationship, the relationship will be changed to an associative entity type along with identifying relationships
Starting from a supertype; add subtypes, a generalization hierarchy, and redistribute attributes to subtypes. Starting from subtypes: add a supertype, a generalization hierarchy and redistribute common attributes and relationships to the supertype.
What is overuse of a generalization hierarchy and how is it resolved?
Generalization hierarchies are uncommon but a typical novice uses them inappropriately. It is resolved by ensuring that subtypes have specialized attributes and relationships. Generalization indicates the essence of an entity whereas attributes indicate the functions performed by an entity or state of an entity.
How is an M-N relationship converted to a table design?
Each M-N relationship becomes a separate table. The primary key of the table is a combined key consisting of the primary keys of the entity types participating in the M-N relationship.
What about a 1-M relationship?
Each 1-M relationship becomes a foreign key in the table corresponding to the child entity type (the entity type near the Crow’s Foot symbol). If the minimum cardinality on the parent side of the relationship is one, the foreign key cannot accept null values.