teecup/048_money_ball_round.sql

22 lines
1.3 KiB
MySQL
Raw Normal View History

-- =====================================================================
-- TeeCup — Money Ball/Lone Ranger (frittstående runder), migrasjon 048.
-- Sjuende av åtte nye turneringsformater denne runden.
--
-- Nøyaktig 4-manns lag. Samme "ett lag = hele runden, INGEN round_side"
-- -struktur som Shamble (bekreftet av bruker) -- flere lag som
-- konkurrerer settes opp som separate runder + flight_group_id.
--
-- Trenger en FAST spillerrekkefølge (round_participant.lineup_order,
-- 0-3) for å vite hvem som er "money ball" på hvilket hull -- et
-- konsept som ikke fantes noe sted i skjemaet fra før.
-- =====================================================================
\set ON_ERROR_STOP on
ALTER TABLE round DROP CONSTRAINT round_play_format_check;
ALTER TABLE round ADD CONSTRAINT round_play_format_check
CHECK (play_format IN ('stroke', 'match', 'skins', 'fourball', 'foursome', 'greensome', 'scramble_2', 'scramble_4', 'stableford', 'chapman', 'copenhagen', 'bbb', 'flag', 'shamble', 'money_ball'));
ALTER TABLE round_participant ADD COLUMN lineup_order smallint CHECK (lineup_order IS NULL OR lineup_order BETWEEN 0 AND 3);
CREATE UNIQUE INDEX round_participant_lineup_order_unique
ON round_participant (round_id, lineup_order) WHERE lineup_order IS NOT NULL;