PATH |
EOModeler allows the user to set the delete rules for a relationship in the advanced relationship inspector. The different delete rules are discussed here.
When the object is deleted and one of the relationships has a nullify delete rule, EOF traverses through the object graph to the relationship object(s) and sets any back pointer to the deleted object to nil. For example, if a department has employees, the employees relationship in the department has a nullify delete rule, and the department is deleted, EOF removes any back pointer from the employee(s) to the department.
When the parent object is deleted, EOF deletes all the objects at the end of a relationship with the cascade delete rule. For example, a department has employees. If the department's employee relationship's delete rule is set as a cascade delete and the department object is deleted, it also deletes the employee objects.
EOF will refuse to delete an object, that has an object at the other end of a relationship with the deny delete rule. For example, the department cannot be deleted if there are employees in the department.
When the parent object is deleted, it does not do any checks to the objects at the other end of a relationship with the no action delete rule. Referring to the department/employee example, when the department is deleted, the employees are left with back pointers pointing to the nonexistent department.
22 July, 1998. Seejo Pylappan. First Draft.
19 November, 1998. Clif Liu. Second Draft.