-- Migration: Rendre period_month nullable pour le mode manual -- Date: 2025-11-28 -- Description: En mode manual, period_month n'est pas requis car les paies peuvent être de différents mois -- Rendre la colonne period_month nullable ALTER TABLE salary_transfers ALTER COLUMN period_month DROP NOT NULL; -- Ajouter un commentaire pour documenter COMMENT ON COLUMN salary_transfers.period_month IS 'Mois de la période (YYYY-MM-DD). NULL en mode manual, requis en mode period.'; -- Ajouter une contrainte de validation pour s'assurer de la cohérence -- En mode period: period_month doit être renseigné -- En mode manual: period_month doit être NULL ALTER TABLE salary_transfers ADD CONSTRAINT check_period_month_by_mode CHECK ( (selection_mode = 'period' AND period_month IS NOT NULL) OR (selection_mode = 'manual' AND period_month IS NULL) );