Skip to content

Foreign Key Relation Actions

Quinn Hanson edited this page Jul 13, 2026 · 8 revisions

Developer Resource: Prisma Schema Referential Actions (Cascade & Restrict)

This wiki document outlines the relational actions (onDelete and onUpdate) configured for every foreign key relationship.


Schema: public

This schema contains the core business domain entities, including activities, projects, permits, and users.

Model Foreign Key References onDelete onUpdate
access_request userId user Cascade Cascade
access_request groupId group Cascade Cascade
activity initiativeId initiative Restrict Cascade
activity_contact activityId activity Cascade Cascade
activity_contact contactId contact Cascade Cascade
contact userId user Cascade Cascade
document activityId activity NoAction Cascade
draft activityId activity Cascade Cascade
draft draftCode draft_code(code) Cascade Cascade
electrification_project activityId activity Cascade Cascade
electrification_project assignedUserId user(userId) SetNull Cascade
electrification_project projectCategory ele...ect_category_code(code) SetNull Cascade
electrification_project projectType ele...ect_type_code(code) SetNull Cascade
enquiry activityId activity Cascade Cascade
enquiry assignedUserId user(userId) SetNull Cascade
general_project activityId activity Cascade Cascade
general_project assignedUserId user(userId) SetNull Cascade
general_project businessArea business_area_code(code) SetNull Cascade
housing_project activityId activity Cascade Cascade
housing_project assignedUserId user(userId) SetNull Cascade
note noteHistoryId note_history Cascade Cascade
note_history activityId activity Cascade Cascade
note_history escalationType escalation_type_code(code) SetNull Cascade
permit activityId activity Cascade Cascade
permit onHoldCode pies_on_hold_code(code) SetNull Cascade
permit permitTypeId permit_type Restrict Cascade
permit stage permit_stage_code(code) Restrict Cascade
permit state permit_state_code(code) Restrict Cascade
permit_note permitId permit Cascade Cascade
permit_tracking permitId permit Cascade Cascade
permit_tracking sourceSystemKindId source_system_kind SetNull Cascade
permit_type sourceSystem source_system_code(code) SetNull Cascade
permit...initiative_xref initiativeId initiative Cascade Cascade
permit...initiative_xref permitTypeId permit_type Cascade Cascade
permit...kind_xref permitTypeId permit_type Cascade Cascade
permit...kind_xref sourceSystemKindId source_system_kind Cascade Cascade
source_system_kind sourceSystem source_system_code(code) Restrict Cascade
user idp identity_provider Restrict Cascade

Schema: yars

This schema primarily handles access control, authorization (roles, policies, attributes), and group mapping. Every documented foreign key in the yars schema enforces a Cascade configuration for both updates and deletions.

Model Foreign Key References onDelete onUpdate
attribute_group attributeId attribute Cascade Cascade
attribute_group groupId group Cascade Cascade
group initiativeId initiative Cascade Cascade
group_role groupId group Cascade Cascade
group_role roleId role Cascade Cascade
policy actionId action Cascade Cascade
policy resourceId resource Cascade Cascade
policy_attribute attributeId attribute Cascade Cascade
policy_attribute policyId policy Cascade Cascade
role_policy policyId policy Cascade Cascade
role_policy roleId role Cascade Cascade
subject_group groupId group Cascade Cascade

Clone this wiki locally