Bonjour,
Une question sur les fonctionnalités de Mysql 5.5.16 avec PhpMyAdmin version 3.4.9 : Peut-on réaliser un trigger "instead of insert or delete or update" pour mettre à jour les tables référencées dans une vue :
exemple :
code de la vue :
code du trigger:
Code : Sélectionner tout - Visualiser dans une fenêtre à part create or replace view w_exempleVue as select t1.champ1, t1.champ2, t2.champ3, t2.champ4 from t1, T2 where t1.cle = t2.cle;
Ce code est à titre d'exemple, désolé pour les incohérences s'il y en avait, mais il sert juste à illustrer la fonctionnalités que je cherche à implanter dans phpMyAdmin avec mySql lorsque on souhaite qu'une vue mette à jour plusieurs tables qu'elle référence.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 create trigger tr_exemple instead of insert or update or delete on w_exempleVue for each row begin if inserting then insert into t1 (w_exempleVue.champ1,w_exempleVue.champ2) where t1.cle = w_exempleVue.cle; insert into t2 (w_exempleVue.champ3,w_exempleVue.champ4) where t2.cle = w_exempleVue.cle; else if updating update t1 set t1.champ1 =w_exempleVue.champ1, t1.champ2 = w_exempleVue.champ2 where t1.cle = w_exempleVue.cle; update t2 set t2.champ3 =w_exempleVue.champ3, t2.champ4 = w_exempleVue.champ4 where t2.cle = w_exempleVue.cle; else if deleting delete from t1 where t1.cle = w_exempleVue.cle; delete from t2 where t1.cle = w_exempleVue.cle; end if; end;
Merci d'avance pour vos réponses.
Partager