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 19/10/2006, 12h30   #1
Invité de passage
 
Inscription : mars 2005
Messages : 21
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 21
Points : 3
Points : 3
Par défaut Declaraction de Variables via declare

Bonjour @tous,

Je viens exposer une incompréhension de ma part :

Je tente d'executer ce script SQL sous l'interface 'phpmyadmin ver.2.6.0'

Code :
1
2
3
4
5
6
7
8
9
10
BEGIN
DECLARE  zoomid INT DEFAULT 0; 
DECLARE  fileid INT DEFAULT 0; 
 
WHILE zoomid IN SELECT catid FROM `jos_zoomfiles` LOOP
 WHILE fileid IN SELECT imgid FROM `jos_zoomfiles` LOOP
    UPDATE jos_zoom_artist_item SET `fk_zoom_id`=zoomid, `fk_zoomfiles_id`=fileid
 END LOOP;
END LOOP;
END
Et apparement, logiquement il m'indique l'erreur suivante :
Code :
BEGIN DECLARE zoomid INT DEFAULT 0
Qu'est ce qui n'est pas correct dans ma declaration de variable ?
Est ce du à autre chose (BEGIN ?, j'ai beau l'enlever, rien ne change)
Sinon, est ce que c'est la bonne facon de faire un UPDATE de ma table jos_zoom_artist_item ?

Merci d'avance pour vos réponses
costadelo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2006, 13h21   #2
Provisoirement toléré
 
Avatar de Maximilian
 
Inscription : juin 2003
Messages : 2 622
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 2 622
Points : 2 505
Points : 2 505
Salut,

Déjà il faut mettre ton bloc BEGIN ... END au sein d'une procédure stockée (CREATE PROCEDURE...)
Et je ne suis pas sûr que PHPMyAdmin les gère : problème de délimiteur, etc.
__________________
Pensez au bouton
Maximilian 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 17h50.


 
 
 
 
Partenaires

Hébergement Web