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 20/05/2011, 13h49   #1
Invité régulier
 
Inscription : septembre 2008
Messages : 57
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 57
Points : 8
Points : 8
Par défaut Trigger Simple mysql

Bonjour,

Je me suis renseigné, et suis en train de mettre au point mon premier trigger simple.

Bien évidemment, il ne marche pas, sinon je ne viendrais pas vous voir :p

Ci dessous le code. L'objectif est de convertir une valeur en pouce en millimètre (d'où le 25.4).

Code :
1
2
3
4
5
6
7
CREATE TRIGGER `trig`  
BEFORE INSERT ON `table` FOR EACH ROW  
BEGIN  
     IF NEW.millimetre = NULL AND NEW.pouce != "" THEN
          SET NEW.millimetre = NEW.pouce * 25.4;
     END IF;
END$$
J'espère que ce n'est qu'un simple problème de syntaxe.

Merci d'avance pour votre aide.
Qwerty111 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/05/2011, 16h41   #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
Avec le message d'erreur, c'est mieux

pouce est de type caractère ?

Et j'aurais instinctivement mis
Code :
IF NEW.millimetre IS NULL
Mais des fois l'instinct joue des tours
__________________
"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 10
Vieux 23/05/2011, 11h36   #3
Invité régulier
 
Inscription : septembre 2008
Messages : 57
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 57
Points : 8
Points : 8
Hello !

Ton instinct est plutôt bon. Pour tester, il faut utiliser IS NULL, et IS NOT NULL. Et pas <>, =, !=.

C'est ce qu'il me manquait, merci.
Qwerty111 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 16h18.


 
 
 
 
Partenaires

Hébergement Web