Adding Content to an ERD

Overview

For an introduction to ERD concepts and why ERDs are important, see Understanding ERDs.

The process for defining data structures in an ERD depends on whether or not you have already created tables in PhixFlow. The following table summarises the different ways you can add data to an ERD, depending on your starting point:

Creating and Importing Data

Starting PointProcessPrimary KeySee
I have CSV or Excel dataDrag the file onto the ERD canvas. PhixFlow automatically imports the data for you.

In each table:

  • either set one attribute as the primary key and ensure all values will be unique
  • or add an attribute called UID with 
    • Data Type = Integer
    • Precision = 10
  • and set one attribute to be the Display Name.
  • Creating Tables in an ERD, below.
I have no data

Define the tables, attributes and their relationships in the ERD.

Later you will need to add records to the table:

  • either manually, for example create a screen in which application users can enter data.
  • or via an analysis model.

PhixFlow automatically creates each table with:

  • a primary key called UID
  • a Name attribute, as the Display Name.
I have data but it's not in PhixFlow

Use an analysis model to connect to your data. PhixFlow can read the data structures to create tables.

In each table:

  • either set one attribute as the primary key and ensure all values will be unique
  • or add an attribute called UID with 
    • Data Type = Integer
    • Precision = 10
    • Tick Primary Key
  • and set one attribute to be the Display Name.
I have tables in PhixFlow already

In the ERD toolbar, click  Table to display a list of all the tables. Drag tables into the ERD and then add the relationships.

PhixFlow cannot ensure unique values for a primary key where:

  • the name is UID but it's data type is not integer
  • the name is not UID.

If your data already has a unique attribute, you can use that as the primary key. For example, the Teacher table could have a National Insurance attribute, which would be unique to a teacher. In this case, you must set up your own processes to make sure that the records in a table all have unique values in the primary key.


Creating Tables in an ERD

Create a New Table using Excel or CSV Data 

  1. Drag a CSV or Excel file directly onto an ERD canvas.
  2. PhixFlow creates a table automatically based on the information in the file.

This topic is also covered in the ERD Fundamentals video course; see Entity Relationship Diagrams.

Create a New Table 

  1. Drag  Create New Table  from the toolbar into the diagram.
  2. In the popup, enter a name that reflects what the table will represent. For example Customer.
  3. PhixFlow opens the properties for the new table and adds the table to the canvas.
    The table header displays its name. PhixFlow automatically adds two attributes:
    • UID, a primary key that is a unique identifier for each record.
    • Name,  a display name that is shown instead of the numeric UID in a view or form.
  1. To add attributes to the table:
    1. In the table, click  Create New. PhixFlow opens the attribute properties on the right, with the default settings of:
      • Type = String
      • Length = 50 characters.
    2. In the properties, enter the Name and select appropriate type properties, such as Date or Integer; see Attribute. The following data types have additional properties:
      • For String add Length
      • For Integer add Precision
      • For Decimal add Significant Figures and Decimal Places
    3. Click  OK to save the attribute properties.
  2. PhixFlow adds the attribute to the table in the ERD.

Add an Existing Table

  1. In the toolbar, click  List Tables.
  2. PhixFlow filters the repository to show the list of tables available in this application.
  3. Drag a table from the repository onto the ERD canvas. 

Create Relationships

In an ERD you can create a one-to-many relationship between a primary key in one table with an attribute in another table. For relationship concepts, see Understanding ERDs.

To create a relationship

  1. Click-drag from one attribute name to another.
    One of the attributes must be a primary key.
  2. PhixFlow highlights the attribute when your mouse pointer is over it. 
  3. When the destination attribute is highlighted, release the click.

Relationships

See the table below for the relationships that can be created between attributes:

Drag fromRelationship
Table 1Table 2
primary keyattribute

1:Many

Table1.primarykey → Table2.attribute

attributeprimary key

1:Many

Table2.primarykey → Table1.attribute


attributeattribute

If Table1 has no primary key, PhixFlow makes the Table1.attribute the primary key.

If Table1 has a primary key, the relationship is from Table1.primarykey instead of from the attribute being dragged.

Relationship Restrictions

PhixFlow cannot create a relationship between your selected attributes if your selected foreign key attribute: 

  • is already a foreign key to a different primary key.
  • has a different Data Type and type properties to the primary key.

If this happens, you can:

  • create a new attribute to be the foreign key.
  • change the foreign key attributes to match the primary key, provided there is no data in the table.
  • create the relationship with a different attribute.

To change the data type properties, In the ERD, click on an attribute to open its properties.

Show Relationships From Other ERDs 

If you have created several ERDs to define the data structure that your application requires, then each ERD is a view onto a part of the full data structure. 

If a table appears on more than one ERD it may have relationships with tables that are not visible in your current ERD. To see other related tables, right-click a table to show the popup menu and select:

  •  Show many-to-one relations
  •  Show one-to-many relations

PhixFlow adds the related tables to your ERD. 

To keep the related tables in your ERD, in the toolbar, click  Save.

To remove the related table from your ERD, in the toolbar, click  Refresh.

Saving ERDs

Any changes you make on the ERD canvas are automatically saved. 

Accessing Properties

To access properties for:

  • the ERD: in the canvas toolbar click  Properties
  • tables: in the ERD, click on the table header or right-click to open the popup menu and select  Configure
  • attributes: in the table, click on an attribute.

PhixFlow opens the properties pane on the right.