IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Procédural MySQL Discussion :

Erreur procedure MySQL


Sujet :

SQL Procédural MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 9
    Par défaut Erreur procedure MySQL
    Bonjour,

    J'ai l'erreur suivante :
    "#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 '' at line 3 "
    lorsque j'essai d'enregistrer cette procedure :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    CREATE PROCEDURE getMessages(IN mID INT, IN type VARCHAR(30))
    BEGIN
        DECLARE items TEXT DEFAULT '';
        SELECT type FROM messages WHERE id =mID LIMIT 1 INTO items;
        IF items != '' THEN
            SELECT * FROM messages WHERE id IN items;
        ELSE
            SELECT 'void';
        END IF;
    END|
    J'ai le même erreur avec cette ligne :
    DECLARE items TEXT;

    Savez vous d'ou viens le problème ?
    Est ce qu'il existe un outil de dev MySql ?
    Merci !!

  2. #2
    Membre confirmé
    Femme Profil pro
    Database
    Inscrit en
    Juin 2010
    Messages
    125
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Database

    Informations forums :
    Inscription : Juin 2010
    Messages : 125
    Par défaut Bonjour
    Euh, il n'y a pas d'erreur au niveau de la déclaration de la variable items. Le problème se situe ailleurs, disont 3 lignes en dessous...

    La variable items est déclaré comme étant un variable de type text mais lors de la requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT type FROM messages WHERE id =mID LIMIT 1 INTO items;
    vous la "redéfinissez" comme étant une table (certes temporaire mais une table quand même ) composé d'une seule colonne donc pour afficher les enregistrements d'une table il faut précédé le nom de la colonne par "SELECT", ce qui donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM messages WHERE id IN (SELECT items);
    Par contre je ne suis pas sur que le test soit correctement effectués... à vérifier

    Pour votre dernière question : je ne pense pas qu'il existe d'outil de dev graphique, du moins je n'en n'ai pas croisé...

    Bonne continuation

Discussions similaires

  1. erreur procedure MYSQL
    Par taoufiqENSIAS dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 09/04/2008, 13h35
  2. Réponses: 5
    Dernier message: 22/06/2006, 12h52
  3. Erreur requete MySQL
    Par kanabzh29 dans le forum Requêtes
    Réponses: 7
    Dernier message: 05/05/2006, 14h08
  4. Erreur connexion MySQL-PHP
    Par specialfox dans le forum Installation
    Réponses: 3
    Dernier message: 27/09/2005, 19h47
  5. Erreur connexion mysql
    Par bodbod dans le forum Bases de données
    Réponses: 3
    Dernier message: 10/07/2004, 09h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo