Print this page

Why can't I create a master detail relationship?

Knowledge Article Number 000005186
Description

Why can't I create a master detail relationship?

Resolution

Salesforce will not accommodate a master detail relationship to a custom object that already contains data.

This is because creating a master detail relationship adds a new required field to the custom object (known as a "foreign key" to database administrators). Each data record in the object needs to have a valid value in the field -- it cannot be left blank.

  • If the object ( detail ), that you want to relate to, does not yet have many records, a possible workaround is to delete the data in your custom object, and then add the master-detail relationship.

 

  • If you don't want to lose all of your existing data, another approach is as follows:

1. Create a Lookup relationship instead of a Master-Detail relationship. This adds the new "foreign key" field to the custom object, but it is not required to have a value for each data record. Do NOT make the Lookup "required". 

2. Add a valid value in the lookup (foreign key) field of each data record in the custom detail object. (You may need to create a custom tab to facilitate this data entry.)

3. Edit the object relationship and change the relationship type from Lookup to Master-Detail.


See Also:
Object Relationships Overview





promote demote