Diagram Conventions   «Prev 

Database Participation Types

Database diagram of the pet store schema
Participation Symbols

  1. Vertical line next to Supplier: The short vertical line close to the SUPPLIER entity indicates a mandatory relationship for SUPPLIER.
  2. Circle next to Product: The circle symbol, indicating optional participation, is close to the PRODUCT entity, which indicates that PRODUCT is the optional (weak) entity.

Defining Deletion Rule for Each Relationship

The first characteristic you will establish for the relationship is a deletion rule. This rule determines what your RDBMS should do when you place a request to delete a given record in the parent table of the relationship. Deletion rules are crucial to relationship-level integrity because they help guard against orphaned records, which are records in the child table that have no relationship whatsoever to any records in the parent table. These are the five types of deletion rules you can define and the actions the RDBMS should take when a given rule is in force.

  1. Deny: The RDBMS will not delete the record in the parent table, but will instead keep the record and designate it as “inactive.”
  2. Restrict: The RDBMS will not delete the record in the parent table if related records exist in the child table. You must have the RDBMS delete all of the related records in the child table before you can have it delete the record in the parent table.
  3. Cascade: The RDBMS will take two specific actions: It will delete the record in the parent table, and it will also automatically delete all related records in the child table.
  4. Nullify: The RDBMS will delete the record in the parent table and will then update the foreign key values of related records in the child table to null. If you are going to use this deletion rule, you must modify the foreign key’s field specifications and set the Null Support logical element to "Nulls Allowed.:
  5. Set Default: The RDBMS will delete the record in the parent table and will then update the foreign key values of related records in the child table to the current Default Value logical element setting in the foreign key’s field specifications. Obviously, you must