Database Reference
In-Depth Information
DEPARTMENT
DepartmentName
BudgetCode
OfficeNumber
DEPARTMENT entity; DepartmentName is identifier; BudgetCode and OfficeNumber
are attributes.
A
B
1:1, nonidentifying relationship. A relates to zero or one B; B relates to exactly one
A. Identifier and attributes not shown.
A
B
1:N, nonidentifying relationship. A relates to one or many Bs; B relates to zero or
one A. Identifier and attributes not shown.
A
B
Many-to-many, nonidentifying relationship. A relates to zero or more Bs; B relates to
one or more As.
A
B
1:N identifying relationship. A relates to zero, one, or many Bs. B relates to exactly
one A. Identifier and attributes not shown. For identifying relationships, the child
must always relate to exactly one parent. The parent may relate to zero, one, many,
or a combination of these minimum cardinalities.
A
A is supertype, C and D are exclusive subtypes. Discriminator not shown. Identifier
and attributes not shown.
C
D
A
A is supertype, C and D are inclusive subtypes. Identifier and attributes not shown.
C
D
Figure 5-14
IE Crow's Foot Symbol
Summary
Note that, for 1:1 and 1:N nonidentifying relationships, a relationship to a parent entity may be
optional. For identifying relationships, the parent is always required.
Patterns in Forms, Reports, and E-R Models
A data model is a representation of how users view their world. Unfortunately, you cannot
walk up to most computer users and ask questions like, “What is the maximum cardinality
between the EMPLOYEE and SKILL entities?” Few users would have any idea of what you
mean. Instead, you must infer the data model indirectly from user documents and from users'
conversations and behavior.
One of the best ways to infer a data model is to study the users' forms and reports. From
such documents, you can learn about entities and their relationships. In fact, the structure of
forms and reports determines the structure of the data model, and the structure of the data
model determines the structure of forms and reports. This means that you can examine a form
or report and determine the entities and relationships that underlie it.
You can also use forms and reports to validate the data model. Rather than showing
the data model to the users for feedback, an alternative is to construct a form or report that
reflects the structure of the data model and obtain user feedback on that form or report. For
example, if you want to know if an ORDER has one or many SALESPERSONs, you can show
the users a form that has a space for entering just one salesperson's name. If the user asks,
“Where do I put the name of the second salesperson?” then you know that orders have at least
 
 
 
Search WWH ::




Custom Search