-- =====================================================================
--  TeeCup — migrasjon 010
--  Offisiell banedata fra teeoff: hindre dupliserte importer (ADR-019)
-- =====================================================================
--  Kjøres etter 001-009. Additiv (partiell unik indeks, rører ingen
--  eksisterende rader -- alle course-rader har source='custom' i dag,
--  external_course_ref er alltid NULL, og NULL matcher aldri seg selv i en
--  UNIQUE-indeks).
-- =====================================================================

\set ON_ERROR_STOP on

-- Importerer en organisator samme teeoff-bane to ganger, skal den andre
-- importen avvises av den eksisterende DUPLICATE-feilkoden (409) --
-- ikke stille sette inn en ny rad med identisk banedata (ADR-019
-- Beslutning E).
CREATE UNIQUE INDEX course_org_external_ref_unique
    ON course (organization_id, external_course_ref)
    WHERE external_course_ref IS NOT NULL;
