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 : 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;
code du trigger:
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;
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.

Merci d'avance pour vos réponses.