Astah Professional allows you to create and manage Entity-Relationship Diagrams (ER Diagrams) using IDEF1X or IE notation. You can also auto-generate ER diagrams by reverse-engineering tables from your databse.
Because all models are stored centrally, you can easily convert ER models into other formats, such as UML Class Diargams.

ER Diagram Sample


Creating ER Diagram

  1. Go to [Diagram] – [ER Diagram] from Main Menu.
    Creating an ER Digaram

  2. An ER Diagram will be created under the [ER Model] package in the Structure Tree.
    ER Diagram Created in the Tree View

Auto-generate ER Diagram


You can automatically generate ER Diagrams by importing database tables using the DB Reverse Plug-in.

  1. Right-click the target ER Model in the Structure Tree
  2. Select [Auto Create ER Diagram]
  3. Choose your preferred generation method.
    Auto Create ER Diagram

  4. The diagram will be created and opened automatically.

Logical and Physical name

Astah allows you to manage both Logical and Physical names for entities. You can switch the display between these two types using one of the following methods:
Property view showing both logical name and physical name for ER Entity

There are three ways to switch the display of names logical or physical.

1. Right-click on the diagram background and select [Diagram Model Type].
Switching diagram model type on the diagram

2. Click [Diagram Model Type] in the Structure Tree.
Switching Diagram Model Type for ERD from the Structure Tree

3. Switch from the ER Diagrams’ Property View (bottom-left pane).
Switching model type for ERD in Property View

TIP: You can set the default name type in [Tools] → [System Properties] → [ER Diagram].

Setting a default model type for ERD in Astah Professional

Switching Notations  (IDEF1X and IE)

You can switch between IDEF1X and IE notation for your ER diagrams.

1. Right-click the ER diagram in the Structure Tree and select [Diagram Notation].
Switching Diagram Notation for your ER Diagram


ER Entity

Creating an ER Entities

Astah provides several ways to create ER Entities – please refer to the the Diagram Editor page.

ER Entity


Adding Primary Keys and Attributes

There are multiple ways to add Primary Keys and Attributes to ER Entities:

Using the Suggest Feature:

Hover over and ER Entity to reveal mini icons.

  • Click the red diamond to add a Primary key
  • Click the orange diamond to add an Attribute

    Add Primary Keys

    Once you add an item, press [Enter] to create another.
    Adding Attributes to ER Entities

Since version 8.5, you are able to add Primary keys and Attributes by pasting text.

Paste text to add Attributes to selected ER Entity

Display Level and Extended Visibility

There are three display levels for ER Entities. Entity, Primary key and Attribute.

ER Entity DIsplay Level

To change the level, right-click an ER Entity and select [Display Level] from the menu.

ER Entity Display Level

To show additional details such as data types and lengths, select [Extended Visibility] from the context menu and check the items you with to display.
Extended Visibility details on ER Diagrams

TIPS: You can set the default display settings in [Tools] → [System Properties] → [ER Diagram].
Default Visibility Setting for ERD


Managing Domains

Creating a Single Domain

Right-click [Domain] in the Structure Tree and select [Add ER Domain].
Creating a single ER Domain

Creating Multiple Domains

You can add multiple domains at once:

  1. Right-click [Domain] in the Structure Tree and select [Add ER Domains], or go to [Tools] > [ER Diagram] > [Add ER Domains].
    Creating multiple ER Domains
  2. A domain configuration window opens, click [Add] icon on the right and enter the details for each domain in the list provided.
    Adding multiple ER Domains and modify in the list


Applying a Domain to an Entity

To apply a domain, drag it from the Structure Tree and drop it directly onto ER Entity in the diagram.
Drag and drop ER Domain to ER Entity


Relationships

You can create relationships using the Tool Palette. Select the desired relationship type and click the two Entities you wish to connect.

Available Relationship Types

IDEF1X

IE

Relationship type

Identifying RelationshipIdentifying RelationshipIdentifying Relationship
Non-Identifying RelationshipNon-Identifying RelationshipNon-Identifying Relationship
Many-to-many RelationshipMany-to-many RelationshipMany-to-many Relationship
  1. Hover one ER Entity first to reveal a mini icon. Click it and select a relationship type from it.
    Create a relationship

  2. Click the second ER Entity.
    Create ER Entities

  3. The relationship is created, and Foreign keys are automatically generated based on the relationship type.
    Create Relationship

SQL Export

You can export ER Entities into SQL (SQL-92).

  1. Go to [Tools] > [ER Diagram] > [Export sql].
  2. In the dialog that opens, specify which models to export, export location and click [Export].
    SQL Export Dialogue

  3. In the [Option], you can specify more detailed settings.
    SQL Export Options

TIPS: Export Entity Definition as a comment

You can export the Entity’s definition as a comment by configuring so in the [Option] menu.
Export SQL Options Comment


Managing ER Data Types

  1. Go to [Tools] – [ER Diagram] – [Set ER Data Type] from main menu.
    Set ER Data Type

  2. Click the [Add] button to create a new data type.
    Adding New ER Data Type


  3. Enter the Name and parameters for the data type, then click [OK].
    Adding New ER Dat Type

TIPS: To set a specific data type as the default for new Attributes, check the [Default Type] box when creating or editing it.
Default ER Data Type


Export Entity Definition Report

You can export a comprehensive list of ER Domains, Entities and detailed Entity information to an excel file.

1. Go to [Tools] – [ER Diagram] – [Export Entity Definition Report].
Exporting Entity Definition Report

2. Check models you want to include in the report, then specify the save location and file name. Click [Export] to generate the Excel file.
Entity Definition Report Menu

ER Entity in Excel


Export format of Attributes and its TaggedValues

Logical Name of Attribute
$each.entity.each.attribute.logical_name
Physical Name of Attribute
$each.entity.each.attribute.physical_name
Domain Name of Attribute
$each.entity.each.attribute.domain
Primary Key Flag of Attribute
$each.entity.each.attribute.pk
Foreign Key Flag of Attribute
$each.entity.each.attribute.fk
NotNull Flag of Attribute
$each.entity.each.attribute.notnull
Reference of Attribute
$each.entity.each.attribute.ref
Datatype of Attribute
$each.entity.each.attribute.type
Length/Precision of Attribute
$each.entity.each.attribute.length_precision
Initial Value of Attribute
$each.entity.each.attribute.initial_value
TaggedValue of Attribute
$each.entity.each.attribute.initial_value