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 04/07/2007, 17h24   #1
Invité régulier
 
Inscription : mars 2006
Messages : 14
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 14
Points : 9
Points : 9
Par défaut Création d'un trigger

Je souhaite créer un trigger sur la base MySQL.
Bonjour,
Ma version : 5.0.22
La requête :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
 
USE cdc;
CREATE TRIGGER check_delete_ville BEFORE DELETE ON ville 
FOR EACH ROW
BEGIN
	DECLARE nb int;
	SELECT count(*) INTO nb FROM assoc WHERE IDVille = old.idville;
	IF nb > 0 THEN 
		ROLLBACK;
	END IF;
END;
me renvoie une erreur. C'est mon premier trigger sur une base de données MySQL et j'ai beau tenté de trouver des renseignements sur Internet, je n'arrive pas à créer cette trigger.
Si quelqu'un aurait des conseils a me donné, c'est avec plaisir.

Merci
rellik45 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/07/2007, 20h45   #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.
http://dev.mysql.com/doc/refman/5.0/...e-trigger.html
__________________
"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 30/11/2007, 11h19   #3
Membre habitué
 
Avatar de elvan49
 
Laurent
Développeur Web
Inscription : octobre 2006
Messages : 226
Détails du profil
Informations personnelles :
Nom : Laurent
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : octobre 2006
Messages : 226
Points : 141
Points : 141
Envoyer un message via Skype™ à elvan49
Par défaut delimiter

Bonjour,

il faut penser à redéfinir les delimiter pour que mysql ne s'embrouille pas les crayons.
Par défaut le delimiter est le point virgule ;
Tu grades celui-ci dans ton trigger mais autour de lui tu en définis un nouveau
ça donnerait :
Code :
1
2
3
4
5
6
delimiter //
CREATE TRIGGER [...]
BEGIN
[instructions...];
END;//
delimiter;
courage.
__________________
"n'imprimez ces messages que si nécessaire... Préservez notre planète"
elvan49 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 08h05.


 
 
 
 
Partenaires

Hébergement Web