-- ===========================================================================
-- Migration: Add UNIQUE constraint (supplier_id, product_id) in supplier_recipe
-- Date: 2026-05-06
-- Context: Recipe Calculator — product = recipe (1:1 semantics)
-- ===========================================================================
-- Egzekwuje zasadę: jeden produkt może mieć co najwyżej jedną recepturę
-- na dostawcę. NULL w product_id jest dozwolony wielokrotnie (MySQL traktuje
-- NULL jako odrębny od innego NULL w UNIQUE INDEX).
--
-- UWAGA: Przed uruchomieniem sprawdź brak duplikatów:
--   SELECT supplier_id, product_id, COUNT(*)
--   FROM supplier_recipe
--   WHERE product_id IS NOT NULL
--   GROUP BY supplier_id, product_id
--   HAVING COUNT(*) > 1;
--
-- Jeśli powyższe zwróci wiersze — usuń lub scal duplikaty przed migracją.
-- ===========================================================================

ALTER TABLE `supplier_recipe`
    ADD UNIQUE KEY `uq_sr_supplier_product` (`supplier_id`, `product_id`);
