This page is for application designers who want define the data that will back the application. It explains how to draw an ERD and setup its properties.
Overview
Use an ERD to define the structure of the data that backs your application.Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
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
Panel | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
|
:
Creating and Importing Data
Starting Point | Process | Primary Key | See |
---|---|---|---|
I have CSV or Excel data | Drag the file onto the ERD canvas. PhixFlow automatically imports the data for you. | In each table:
|
|
I have no data | Define the tables, attributes and their relationships in the ERD. Later you will need to add records to the |
table:
| PhixFlow automatically creates |
each table with:
|
|
|
Load
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:
|
|
I have tables in PhixFlow already | In the ERD toolbar, click
|
|
|
Note | ||||||||
---|---|---|---|---|---|---|---|---|
|
Add an Existing Table
In the toolbar, clickCreating Tables in an ERD
Open an Existing ERD
In the repository, find ERD.
Create a New ERD
In the repository, find ERD. Right-click to display the context menu, and selectTip |
---|
When you are creating tables, choose a name that reflects the entity your table represents. |
PhixFlow opens a new ERD canvas on the left with a toolbar at the top. Hover your mouse pointer over toolbar icons to display a tooltip.
Drag and Drop Import: Create a New Table using Excel or CSV
Anchor | ||||
---|---|---|---|---|
|
- Drag a CSV or Excel file directly onto an ERD canvas.
- 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
Anchor | ||||
---|---|---|---|---|
|
- Drag
from the toolbar into the diagram.Insert excerpt _table_new _table_new nopanel true - In the
- popup, enter a name
- that reflects what the table will represent. For example
Customer
. - 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.
- To add attributes to the table:
- In the table, click
. PhixFlow opens the attribute properties on the right, with the default settings of:Insert excerpt _new _new nopanel true - Type = String
- Length = 50 characters.
- In the properties, enter the Name and select appropriate type properties, such as Date or Integer; see
- In the table, click
- Attribute. The following data types have additional properties:
- For String add Length
- For Integer add Precision
- For Decimal add Significant Figures and Decimal Places
- Click
to save the attribute properties.Insert excerpt _finish _finish nopanel true
- Attribute. The following data types have additional properties:
- PhixFlow adds the attribute to the table in the ERD.
Add an Existing Table
- In the toolbar, click
.Insert excerpt _table_list _table_list nopanel true - PhixFlow filters the repository to show the list of tables available in this application.
- 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
- Click-drag from one attribute name to another.
title | More detail |
---|
- One of the attributes must be a primary key.
- PhixFlow highlights the attribute when your mouse pointer is over it.
- When the destination attribute is highlighted, release the click.
Relationships
See the table below for the relationships that can be created between attributes
:
Drag from | Relationship |
---|
Table 1 | Table 2 |
---|---|
primary key | attribute |
1:Many Table1.primarykey → |
Table2.attribute |
attribute | primary key |
1:Many Table2.primarykey → |
Table1.attribute |
1:many
attribute | attribute |
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.
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.
Show Relationships From Other ERDs Anchor erd-view erd-view
erd-view | |
erd-view |
Tip |
---|
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:
Insert excerpt _rel_in _rel_in nopanel true
Insert excerpt _rel_out _rel_out nopanel true
PhixFlow adds the related tables to your ERD.
To keep the related tables in your ERD, in the toolbar, click
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|
To remove the related
table from your ERD, in the toolbar, click
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|
Saving ERDs
Any changes you make
Accessing Properties
You can set properties for all the items in an ERD. To access properties:
foron the ERD canvas are automatically saved.
Accessing Properties
To access properties for:
- the ERD: in the canvas toolbar click
Insert excerpt _property_settings _property_settings nopanel true
- tables: in the ERD, click on
- the table header or right-click to open the
- popup menu and select
Insert excerpt _config _config nopanel true
- attributes: in the table, click on an attribute
- .
PhixFlow opens the properties
Rearranging ERDs
To move tables around in the ERD, click on the header and drag the table. There are also Align options in the toolbar that you can use to line up or distribute selected tables.
If you want to highlight the relationships that affect a table, click the table to select it. The following screenshot shows the Teacher table is selected.
- Blue lines indicate relationships to a foreign key in the selected table
- Green lines indicate relationships from the primary key in the selected table.
If a table has a lot of attributes that you do not need to see, collapse the list to show only the table's primary and foreign keys.
- Either right-click on a table and select Hide attributes or Show attributes
- Or double-click on the table header.
To select multiple tables, draw a square around them.
Properties
Basic Settings
The name for the ERD.
Toolbars and Popup Menus
ERD Toolbar
The toolbar is at the top of the canvas. Hover your mouse pointer over the toolbar to see a tooltip.
Create options
List options
Canvas options
Options to arrange the selected tables in the ERD:
Use this icon to save diagram layout changes to the ERD.
Update the ERD to the last saved diagram layout. This clears any unsaved layout changes.
Your ERD should automatically show an changes elsewhere in PhixFlow. For example, if someone adds a new attribute to a table in your ERD, the attribute will appear on the list. If changes are not appearing, click this icon.
Ungroup
todo-Fiona - does not seem to be available
Select a grouped set of items and then click to ungroup them.
Select several items then click to group them together.
Table Pop-up Menu
To access more options in a pop-up menu, in the table header, clicktodo-Fiona - check Can this be
Open the properties for this table.
Remove the selected item(s) from the diagram.
Show one to many relations
todo-Fiona - should be
Toggle the table between expanded to show all attributes or collapsed to show only the table name, primary key and any foreign keys. This is useful if your table contains many attributes.
Attribute Pop-up Menu
hidden | true |
---|
Things not yet implemented
For the Starting Point table:
Drag the Excel files directly into an ERD. PhixFlow loads the data structure and records. It then adds the table to the ERD.
In the ERD, you then add the relationships between tables.
For Open an Existing ERD
- From the home menu, select Data and click on an ERD in the list.
- In the repository, open your application and find Data → ERD.
- Either right-click on an ERD name and select Display.
- Or...
For Create a New ERD
Tip |
---|
When you are creating tables, choose a name that reflects the entity your table represents. |
PhixFlow opens a new ERD canvas on the left with a toolbar at the top. Hover your mouse pointer over toolbar icons to display a tooltip.
For Create a Table From an Excel File Document Flow 4.10
For Create Relationships table
1:many
pane on the right.