MySQL 5.0.x et triggers : problème d'ajout de trigger

Résolu
cs_Vld Messages postés 9 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 31 mai 2005 - 30 mai 2005 à 13:35
cs_Vld Messages postés 9 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 31 mai 2005 - 31 mai 2005 à 09:22
Bonjour à tous.

Je cherche depuis pas mal de temps comment ajouter un trigger à ma table mais je bloque toujours au même endroit (erreur 1064, erreur de syntaxe ...)

Voici mon trigger :


CREATE OR REPLACE TRIGGER tcl
BEFORE INSERT ON client
FOR EACH ROW
SET new.date='newdate';

Pour info, ceci ne marche pas non plus avec Begin & end ..

Erreur :
ERROR 1064 (42000): 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 'TRIGG
ER tcl BEFORE INSERT ON client FOR EACH ROW SET new.date='newdate'' at line 1

Merci ... Si vous avez une idée elle est la bienvenue.

6 réponses

cs_Vld Messages postés 9 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 31 mai 2005
31 mai 2005 à 08:51
Ok, c'est bon je viens de solutionner ><

Il se trouve que mysql n'accepte pas la close [OR REPLACE] ... Bien que, selon la doc, il se base sur la norme sql2003 :/

Donc voilà ce qu'il faut savoir de mysql 5.0.4 :
1) pas de OR REPLACE
2) Pas de référence directe aux tables par leur nom.

A suivre ... Merci de votre aide.
3
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
30 mai 2005 à 22:20
Salut,

Le probleme ne vient 'il pas de la date



remplace newdate par date sans les ''



Voila
0
cs_Vld Messages postés 9 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 31 mai 2005
31 mai 2005 à 08:35
Merci de ta réponse, mais cela ne fonctionne pas.

J'ai tout essayé et je pense qu'il doit y avoir quelque chose de spécial à faire au préalable pour activer les triggers sous mysql ;
Je ne trouve malheureusement aucun exemple sur internet, et la doc reste évasive sur les triggers 5.0.4 ...

Même un trigger vide ne fonctionne pas :( (sans bloc d'instruction)
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
31 mai 2005 à 08:37
Salut

as tu vu ça?



The
CREATE TRIGGER
statement requires the
SUPER
privilege.
It was added in MySQL 5.0.2.



http://dev.mysql.com/doc/mysql/en/create-trigger.html
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Vld Messages postés 9 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 31 mai 2005
31 mai 2005 à 08:42
Oui, j'ai pensé que c'était ça aussi ... Mais j'ai les privilèges :

+-----------+------------+
| host | Super_priv |
+-----------+------------+
| localhost | Y |
| SANDRA | N |
+-----------+------------+
0
cs_Vld Messages postés 9 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 31 mai 2005
31 mai 2005 à 09:22
0
Rejoignez-nous