Documentation

Schema diagram

The schema diagram draws the tables, columns, keys, and declared foreign keys of the active database. It reads metadata only and never reads rows or changes anything.

What it reads

The diagram reads tables, views, columns and their types, nullability, primary and unique keys, and declared foreign keys with their delete and update rules.

It never reads row data. It also does not guess relationships from column names such as customer_id. A relationship appears only when the database declares a foreign key.

Opening a diagram

Each entry point opens a diagram tab with an initial scope. A table scope includes the selected table and its directly related tables.

Diagram entry points, shortcuts, and initial scopes
Entry point macOS Linux Initial scope
View → Schema Diagram ⌘⌃E Ctrl+Alt+E The active database
Sidebar Schema diagram Not assigned Not assigned The active database
Open Diagram on a schema Not assigned Not assigned That schema and directly related tables
Open in Diagram on a table Not assigned Not assigned That table and directly related tables
Diagram in a table's structure view Not assigned Not assigned That table and directly related tables

On MySQL and MariaDB, a database diagram starts with the current database.

Reading the diagram

Each card identifies a table or view. Its header shows the schema when needed, the object name, and a kind badge for a view or materialized view. Columns show their types, primary-key and foreign-key markers, and a ? when the column is nullable.

Relationship lines connect declared foreign keys. A bar means one, a crow's foot means many, and a plain arrow means the database did not provide enough metadata to determine cardinality.

A table pulled in from outside the selected scope has a dashed border, its schema label, and an External badge. Views have their own badge. When the current account cannot inspect a table, the diagram shows a locked Not accessible placeholder instead of inventing metadata.

Open Legend from the toolbar or the lower-left corner for the notation used in the current diagram.

Moving around

Drag empty space to pan. Use a mouse wheel, trackpad pinch, or the zoom controls to zoom. Fit to view frames every visible table. Arrange calculates a new layout, while Reset view restores the last generated layout. Drag a table to keep it in a manual position.

Search tables finds tables both inside and outside the diagram. Choosing an outside result adds it. In Details, Focus centers a table, Expand related adds its direct relationships, and Remove from view hides it. For an external table, an action such as Add all tables from public uses that table's schema name in place of public.

Keyboard shortcuts available while a diagram tab is active
Action macOS Linux
Search tables⌘FCtrl+F
Refresh⌘RCtrl+R
Fit to viewFF
ArrangeAA
Expand relatedEE
Remove from viewDelete
Next related table]]
Previous related table[[
Pan left⇧ArrowLeftShift+ArrowLeft
Pan right⇧ArrowRightShift+ArrowRight
Pan up⇧ArrowUpShift+ArrowUp
Pan down⇧ArrowDownShift+ArrowDown
Zoom in⌘=Ctrl+=
Zoom out⌘-Ctrl+-
Reset zoom to 100%⌘0Ctrl+0
Details⌘⌥DCtrl+Alt+D

Details and contents

Select a table, column, or relationship to inspect it in Details. For a relationship, the panel shows the declared columns, cardinality, and delete and update rules. These rules are displayed exactly as metadata; opening the panel never executes them.

The Contents tab presents the visible tables, columns, and relationships as a structured list for keyboard and screen-reader navigation.

Refreshing

Refresh reloads schema metadata from the active connection. Tables you moved keep their positions, and tables you removed stay removed. New objects in the starting scope can be added to the current layout.

The Refresh failed · showing cached diagram chip means the reload failed and the last successful diagram is still on screen. Open the chip to read the error or choose Retry.

Exporting

Save as PNG… writes a file. Copy image puts the same PNG on the clipboard. Both render the full diagram rather than only the current viewport. The export uses the current table layout, a white background, and a legend when relationship or external-table notation is present.

Exports use a high-resolution scale when the output size allows it. For a very large diagram, the completion message reports Exported at [scale]× because the diagram is large with the scale that was used.

Large databases

When opening every table at once would be slow, the database entry points first show Choose a starting scope. Select one or more schemas, or use Start from a table to begin with one table and its direct relationships. You can reopen the picker with Choose schemas….

The status strip always says Showing [visible] of [total] tables and reports the relationship count. It also shows a Large diagram chip when the current view is above the recommended size. The diagram does not silently hide tables.

Supported databases and limitations

Schema diagrams are supported for PostgreSQL, MySQL, MariaDB, and SQLite.

  • Relationships do not cross connections.
  • Partitioned tables show a relationship line for each partition.
  • SQLite foreign keys without a column list resolve to the parent table's primary key.
  • Permission-limited catalogs show placeholders for tables the account cannot inspect.
  • Partial or expression-based unique indexes do not make a relationship one-to-one.

Availability

The schema diagram is included with a license. The free trial shows every diagram entry point and offers a license when you open one. See pricing for current commercial details.