NOTE: Although relationship classes can be both created and edited in ArcInfo and ArcEditor, they are read-only in ArcView. The feature classes participating in the relationship class will also be read-only in ArcView.
|
|
Relationship classes |
On-the-fly relates |
Joins |
| Typical uses |
Ensuring data integrity |
Editing with low overhead |
Labeling, symbology |
| Scope |
Geodatabase |
Cross database or data source |
Cross database or data source |
| Framework |
Geodatabase data model |
Defined in map layer |
Relational database/SQL |
| User interface for editing |
ArcMap |
VBA application in ArcMap |
SQL queries |
| User interface for navigating |
ArcMap |
ArcMap |
SQL queries |
| Composite objects |
Yes |
No |
No |
| Referential integrity |
Yes |
No |
No |
| Messaging |
Yes |
No |
No |
| Attributes |
Yes |
No |
No |
| Relationship rules |
Yes |
No |
No |
| Cardinality |
One-to-one, one-to-many, many-to-many |
One-to-one, one-to-many, many-to-many |
One-to-one, many-to-one |
| Pros |
Manages referential integrity and messaging behavior
Edited via ArcMap attributes inspector |
No editing overhead, can cross workspace and data source type |
No editing overhead; can cross workspace and data source type; can be used for SQL queries, labeling, and symbology |
| Cons |
Incurs editing overhead; must be defined only between tables in same geodatabase; still requires joins for SQL query, labeling, and symbology |
No referential integrity; no messaging; no support for many-to-many cardinality; still requires joins for SQL query, labeling, and symbology |
No referential integrity, no messaging, no support for many-to-many relationships, one-to-many relationships involving feature classes not supported |