db-update-2020-10-02.sql 1.04 KB
use database;

-- Modification des contraintes de reference sur la table materiels
-- pour les FK pointant vers groupe metier et thematique
-- pour que ces FK soient tout simplement mises à NULL quand le groupe metier/thematique est supprimé
-- (sinon on a une erreur quand on supprime le groupe...)
-- Tout ca, juste pour modifier la contrainte "ON DELETE set null" (au lieu de "no action" avant), sql c'est lourd...

-- 1) contrainte sur groupe thematique
ALTER TABLE materiels
 DROP FOREIGN KEY fk_materials_thematic_group1,
 DROP INDEX fk_materials_thematic_group1;
ALTER TABLE materiels
  ADD CONSTRAINT fk_materials_thematic_group1 FOREIGN KEY (groupes_thematique_id) REFERENCES groupes_thematiques (id) ON DELETE set null ON UPDATE NO ACTION;
  
-- 2) contrainte sur groupe metier
ALTER TABLE materiels
 DROP FOREIGN KEY fk_materials_work_group1,
 DROP INDEX fk_materials_work_group1;
ALTER TABLE materiels
  ADD CONSTRAINT fk_materials_work_group1 FOREIGN KEY (groupes_metier_id) REFERENCES groupes_metiers (id) ON DELETE set null ON UPDATE NO ACTION;