Précédent   Forum des professionnels en informatique > Bases de données > MySQL > SQL Procédural
SQL Procédural Forum d'entraide sur les triggers, les procédures stockées et les fonctions en MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/03/2007, 10h20   #1
Candidat au titre de Membre du Club
 
Inscription : octobre 2004
Messages : 68
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 68
Points : 10
Points : 10
Par défaut Pb sur la création d'un trigger dans MySql

Bonjour,

Je souhaiterais créer un trigger sur une de mes table.
Etant donné que c'est la première fois que je fais ça sous MySQL, je rencontre quelques problèmes. Voici le trigger que j'essai de créer :

Code :
1
2
3
4
5
6
7
 
CREATE TRIGGER trigger_etat AFTER UPDATE ON t_matable
FOR EACH ROW BEGIN
IF (NEW.etat != OLD.etat) THEN
INSERT INTO t_matable2 (champ1,champ2,champ3) VALUES (NOW(),NEW.ID,NEW.etat);
END IF;
END
Mais Mysql me renvoi toujours une erreur :

Citation:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSERT INTO t_matable2 (champ1,champ2,champ3) VALUES (NOW(),NEW.ID,NEW.etat)' at line 4
Si quelqu'un pouvait me donner un coup de main

Merci
NoiBe est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2007, 16h16   #2
Expert Confirmé Sénior
 
Avatar de qi130
 
Homme Pierre
Ingénieur qualité méthodes
Inscription : mars 2003
Messages : 3 726
Détails du profil
Informations personnelles :
Nom : Homme Pierre
Âge : 51
Localisation : France

Informations professionnelles :
Activité : Ingénieur qualité méthodes
Secteur : Finance

Informations forums :
Inscription : mars 2003
Messages : 3 726
Points : 4 739
Points : 4 739
Citation:
Envoyé par Aide MySQL
Note : actuellement, les déclencheurs ont les mêmes limitations que les procédures stockées : ils ne peuvent pas contenir de références directes aux tables via leur nom. Cette limitation sera levée dès que possible
__________________
"Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet)
-----------------------
Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MP
Usus magister est optimus
qi130 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2007, 17h33   #3
Candidat au titre de Membre du Club
 
Inscription : octobre 2004
Messages : 68
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 68
Points : 10
Points : 10
Désolé mais je ne comprend pas.

Cela veut dire que ce que je cherche à faire est impossible pour l'instant ?
NoiBe est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2007, 21h55   #4
Expert Confirmé Sénior
 
Avatar de qi130
 
Homme Pierre
Ingénieur qualité méthodes
Inscription : mars 2003
Messages : 3 726
Détails du profil
Informations personnelles :
Nom : Homme Pierre
Âge : 51
Localisation : France

Informations professionnelles :
Activité : Ingénieur qualité méthodes
Secteur : Finance

Informations forums :
Inscription : mars 2003
Messages : 3 726
Points : 4 739
Points : 4 739
Citation:
Envoyé par NoiBe
Désolé mais je ne comprend pas.

Cela veut dire que ce que je cherche à faire est impossible pour l'instant ?


Quand tu écris
Code :
INSERT INTO t_matable2...
tu fais référence à la table t_matable2 par son nom...
__________________
"Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet)
-----------------------
Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MP
Usus magister est optimus
qi130 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/03/2007, 08h08   #5
Candidat au titre de Membre du Club
 
Inscription : octobre 2004
Messages : 68
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 68
Points : 10
Points : 10
Mais au final, je dois laissé tomber l'idée d'utiliser un trigger ou bien il y a une solution pour contourné ce "problème" ?
NoiBe est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h41.


 
 
 
 
Partenaires

Hébergement Web