Bonjour,
Je vous explique mon problème.
J'ai une table "OER_REPONSE" où sont insérer des réponses provenant de formulaires (application métier), soit une ligne égale une réponse.
Voici la structure de ma table :
Les réponses saisies se trouvent dans REP_LLREPONSE.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 CREATE TABLE IF NOT EXISTS `OER_REPONSE` ( `REP_NUIDENQUETE` int(11) NOT NULL default '0', `REP_NUENQTYPE` int(1) NOT NULL default '0', `REP_NUORDRE` int(3) NOT NULL auto_increment, `REP_NUQUESTION` int(4) NOT NULL default '0', `REP_LLREPONSE` varchar(250) default NULL, `REP_LLREPONSE_MOD` varchar(250) default NULL, `REP_LLCOMMENTAIRE` varchar(100) default NULL, `REP_DTCREAT` date default NULL, `REP_DTMAJ` date default NULL, `REP_COOP` varchar(12) default NULL, PRIMARY KEY (`REP_NUIDENQUETE`,`REP_NUENQTYPE`,`REP_NUORDRE`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
A l'aide d'un trigger je duplique ce qui est entrée dans REP_LLREPONSE vers REP_LLREPONSE_MOD. Jusque la tout va bien, sur l'INSERT c'est assez facile.
Maintenant ce que je voudrais c'est que sur un UPDATE de REP_LLREPONSE les données soient dupliquées dans REP_LLREPONSE_MOD. En revanche, si je modifie REP_LLREPONSE_MOD, REP_LLREPONSE ne doit pas bouger ... et c'est la toute la difficulté pour moi.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 CREATE TRIGGER `BD_OER`.`TGR_REPONSE` BEFORE INSERT ON `BD_OER`.`OER_REPONSE` FOR EACH ROW SET new.REP_LLREPONSE_MOD = new.REP_LLREPONSE
J'ai essayé tout un tas de chose sans jamais réussir, un coup de main serait plus qu'apprécié.
Merci.
Partager