Skip to Content

Database Model Types

Before creating a database model in Qubase, you must select a model type.

The selected model type controls which database objects you can create, which properties are required, and how much technical detail is included in the design.

Qubase supports three model types:

  • Conceptual Model
  • Logical Model
  • Physical Model

Model type overview

Model TypePrimary PurposeUser CreatesLevel of Detail
ConceptualDescribe the business structureEntitiesHigh-level
LogicalDefine the complete data structureEntities, attributes, keys, and relationshipsDetailed but DBMS-independent
PhysicalPrepare the design for a specific DBMSDatabase tables, columns, constraints, and indexesImplementation-level

Conceptual Model

A Conceptual Model represents the database at a high level.

It focuses on the main business entities and their relationships without including technical database details.

You can define

  • Entity names
  • High-level relationships
  • Main business concepts

Example

For an online store, a Conceptual Model might contain:

Customer Order Product Payment

At this stage, you do not need to define data types, indexes, or database constraints.

Use a Conceptual Model when

  • Planning a new system
  • Discussing requirements with stakeholders
  • Identifying major business entities
  • Creating an initial database overview

[!NOTE] In a Conceptual Model, Qubase requires only the entity name when creating a new entity.

Logical Model

A Logical Model describes the full database structure without depending on a specific database management system.

It adds more detail to the entities identified in the Conceptual Model.

You can define

  • Entity or table names
  • Attributes
  • Primary Keys
  • Foreign Keys
  • Relationships
  • Cardinality

Example

Customer ├── customer_id ├── full_name └── email Order ├── order_id ├── customer_id └── order_date

The Logical Model explains how data is organized, but it does not require database-specific data types.

Use a Logical Model when

  • Designing the complete database structure
  • Defining keys and relationships
  • Reviewing data requirements
  • Preparing the model before physical implementation

Physical Model

A Physical Model represents the database structure for implementation in a specific DBMS.

It contains the most technical details and follows database-specific rules.

You can define

  • Table names
  • Columns
  • Data types
  • Primary Keys
  • Foreign Keys
  • Constraints
  • Indexes
  • Default values
  • Nullable rules

Example

CREATE TABLE customers ( customer_id UUID PRIMARY KEY, full_name VARCHAR(100) NOT NULL, email VARCHAR(255) UNIQUE NOT NULL );

Use a Physical Model when

  • Preparing the database for implementation
  • Generating SQL
  • Connecting to a DBMS
  • Defining database-specific data types and constraints
  • Creating indexes and performance rules

[!IMPORTANT] Physical Models may require selecting or connecting to a supported DBMS because data types and SQL rules can differ between PostgreSQL, MySQL, and SQL Server.

How Qubase adapts to the selected model

When you create a new database object, Qubase changes the creation form based on the selected model type.

Selected ModelForm Requirements
ConceptualEntity name
LogicalEntity name, attributes, keys, relationships, and cardinality
PhysicalTable name, columns, data types, keys, constraints, indexes, defaults, and nullable rules

This prevents unnecessary technical fields from appearing when you are working at a higher design level.

Choose the right model type

Use the following guide:

Do you only need to define business entities? ├── Yes → Conceptual Model └── No ├── Do you need keys and relationships without DBMS details? │ ├── Yes → Logical Model │ └── No → Physical Model

Moving between model types

Qubase supports database model transformation between:

Conceptual Logical Physical

Database objects such as entities, attributes, relationships, Primary Keys, Foreign Keys, and constraints are transformed according to the selected target model.

Before applying a transformation, Qubase can display a preview of the resulting model.

[!WARNING] Moving to a more detailed model may require additional information. For example, transforming a Logical Model into a Physical Model may require data types, constraints, and a target DBMS.

Best practices

  • Start with a Conceptual Model when requirements are still being discussed.
  • Use a Logical Model to validate the full data structure.
  • Use a Physical Model only when implementation details are known.
  • Confirm the selected DBMS before defining physical data types.
  • Review the model transformation preview before applying changes.
Last updated on