Previous Topic: Migrate a Partial Key in the Physical ModelNext Topic: Speed Modeling with Domains


Domains and Data Modeling

A domain is an independent model object that you can use to quickly assign properties to an attribute or column. You can define both logical and physical domains in the Domain Editor.

Unlike other objects that are associated with either the physical or logical model, you can define a domain once and use it in both the physical and logical model, saving you significant time as you work with the logical and physical model.

After you create a domain, it is added to a pool of domains. To help you reuse domains throughout your model, all logical and physical domains appear beneath the Domains icon in the Model Explorer. You can drag any domain from the Model Explorer and drop it in an entity, table, or view to quickly create an owned attribute or column.

For example, to create a CUSTOMER entity with three attributes, customer number, social security number, and phone number, you can reuse the Number domain. To do so, drag Number to the key area of the CUSTOMER entity and use on-diagram editing to rename the new attribute customer number. Then drag Number again, but place it in the non-key area and rename it social security number. Repeat these same steps for phone number.

Note: Unique name rules are enforced for attribute and column names inherited from domains.

With domains, you can also quickly make changes to multiple attributes and columns. When you change a domain property in the Domain Editor, all the owned attributes or columns that are based on the domain are also changed.

More information:

Speed Modeling with Domains

Domains in the Logical Model

Domains in the Physical Model