Relationship Types

Previous  Index  Next  How To Use

When modeling a relationship you have to think about what that relationship really means. The cardinality is an important part of this meaning.

 

Below is an explanation of the different cardinalities.

 

Cardinality

Symbol

Description

One-to-one

1..1

One instance of an entity always corresponds to another instance of a second entity.

One-to-many

1..n

One instance of an entity corresponds to one or more instances of a second entity.

Many-to-one

n..1

More than one instance of an entity can correspond to the same single instance of a second entity.

Many-to-many

n..n

More than one instance of an entity can correspond to more than one instance of a second entity.

 

There's a groupbox for each of these types at the top of the Relationship Properties dialog. But there is more, a relationship can have additional properties:

 

Property

Description

Dominant role

In a one-to-one relationship, this will determine the direction of the relationship.

Role name

Description the relationship of the first entity to the second entity and vice versa.

Required

Indicates that each instance of a first entity requires an instance of the second entity. This influences the cardinality as described below.

Cardinality

In addition to the groupboxes, you can change the cardinality by either using the Required checkbox, or selecting an entry from the drop down box.

 

0..1

One instance optionally corresponds to another instance of the second entity.

0..n

One instance corresponds to zero or more instances of a second entity.

Identifying relationship

For identifying relationships, the master identifying attributes become part of the detail identifying attributes. An identifying relationship is a continues line, while a non-identifying relationship is a dashed line.

 

The Dominant Role, Cardinality and Required attributes influence the behaviour when generating a physical data model.

 

In the diagram, the end points of each relationship show you how the relationship is defined:

 

Many, but optional

One, but optional

Many, requires at least 1

One, required

 

See also:

Relationship Examples