-- ===================================================================== -- TeeCup — scramble/greensome i ORG-SCOPEDE turneringer: hvilken -- spillers utslag ble valgt (migrasjon 039). Samme funksjon som -- migrasjon 036 ga frittstående runder 2026-07-25 -- bevisst holdt -- utenfor DEN runden (se dens egen kommentar), tatt fatt på nå som -- rask, avgrenset oppfølger (FEATURE_BACKLOG.md "Scramble: statistikk -- over utslag brukt per spiller"). -- -- Kun meningsfullt på en DELT-BALL-hull-rad (hole_score. -- match_participant_id IS NULL) -- håndhevet i app-laget -- (submit_hole_score), ikke en CHECK, samme mønster som migrasjon 036. -- Nullable -- helt valgfritt å registrere. -- -- Composite FK til match_participant (organization_id, id), samme -- mønster som hole_score.match_participant_id sin egen FK over -- -- RLS håndheves via organization_id på hole_score selv, uendret. -- ON DELETE SET NULL (ikke CASCADE): fjernes en deltaker fra matchen -- (mulig FØR lås, se matches.py DELETE-endepunkt) skal ikke slette -- allerede registrerte hull-scorer, kun nullstille selve valget. -- ===================================================================== \set ON_ERROR_STOP on ALTER TABLE hole_score ADD COLUMN selected_participant_id uuid; ALTER TABLE hole_score ADD CONSTRAINT hole_score_selected_participant_fk FOREIGN KEY (organization_id, selected_participant_id) REFERENCES match_participant(organization_id, id) ON DELETE SET NULL;