Logical modeling closely resembles a final physical design while avoiding any specific database parameters. Logical models are the final touch point for validating a technical design with the business teams before the physical implementation.
While a logical design generates physical objects behind the scenes, it also contains elements that are not translatable to physical objects (e.g., role names and logical names). Even when parallels exist between logical and physical objects, such as many-to-many relationships and subtypes, logical modeling offers greater context to the nature of the underlying physical objects.
Differences found in the Logical view mode
Access the Logical view mode from the view mode selector on the top of the diagram or using the keyboard shortcut: Ctrl+6
Logical names take precedence
SqlDBM allows two sets of names for every object: logical and physical. In the logical view mode, logical names are displayed on the objects and are affected through the edit screen.
Note, for newly created objects or columns, the logical name becomes the physical name. However, subsequent edits in the Logical view mode will affect the logical name only. Press the override button on the object properties to override the physical name with the logical.
Data types are hidden
In the logical stage, entities and relationships have already been defined, and the focus shifts to the attributes and other contextual information. To streamline the creation and review of new attributes, data types are hidden from view but still accessible from the table and column properties.
Many-to-many relationships
Many-to-many relationships between two entities hold a special challenge for database designers because there is no practical way to construct them physically without a third (linking) table.
To allow users to simultaneously work in and toggle between physical and logical view modes, SqlDBM has settled on a hybrid notation style, using Crow’s foot cardinality and borrowing the relationship diamond from Chen notation, which doubles as a physical table.
Logical representation of a mandatory many-to-many relationship in SqlDBM.
To create a many-to-many relationship, select it as the connection type from the top menu. The resulting “diamond” symbol on the linking table can be turned on or off from the table properties (for any table).
Role names
Relationship names are referred to as Roles in logical modeling. Roles are metadata objects which give context to the nature of the relationship between two tables.
To define a role name, click on any relationship and enter the “Logical Name” from the Relationship Properties on the right.
Note that relationship names can also be displayed and maintained in the other view modes.
Logical visibility flags
In SqlDBM, tables and columns can be flagged for visibility in logical and physical view modes and projects. This setting will determine if the object or column is visible on Logical (and Conceptual) or Physical view modes and will be considered during import/export in Logical projects (see related article at the bottom of this post).
The following Visibility options are available for Tables and their columns. Note that Table settings will take precedence over their column settings.
Physical & Logical - (default) the table or column is visible on all view modes and participates in exporting and importing to Logical projects.
Logical only - the table or column is visible only on Logical and Conceptual view modes and does not participate in the export from Logical projects.
Physical only - the table or column is visible only on view modes besides Logical and Conceptual and does not participate in the import to Logical projects.
See also