6. Using JoinDefs in QBF : JoinDef Definition Frame : Role Column in JoinDef Definition
 
Share this page                  
Role Column in JoinDef Definition
In the Role column, type either Master or Detail for the role of each table. You can use m or d as abbreviations.
At least one table in every JoinDef must be entered as a Master table. Keep in mind that Master and Detail are relative terms. You can have as many Master tables in a JoinDef as you need (up to the maximum of 10). You must designate a table (or tables) as a detail table only if it has a manytoone relation to one or more of the master tables. For example, the Staff table lists an employee only once, while the Tasks table can list that employee many times for many different tasks. Thus, the Tasks table has a manytoone relationship to the Staff table and is designated as a detail table in a JoinDef that links Staff to Tasks.
A table that is a master in one JoinDef can be a detail table in some other JoinDef. You need to specify each table's role as it relates to the current JoinDef.
For example, the Staff table contains each employee's name, title, hourly rate, and manager. The Manager table contains the names of managers and their titles. If you joined these two tables on the Manager column in each table, the result is a Master/Detail join because one manager in the Manager table might be the manager for several different employees. Thus, this join could be used to list those employees supervised by each manager.
However, if you joined these two tables on the Manager column in the Manager table and the Name column in the Staff table, the result is a Master/Master join because those employees who were managers are listed only once in each table. You can use this join to display the title and hourly rate of those employees who were managers.
A complicated JoinDef containing many tables can have multiple master and multiple detail tables.