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 :

Procédure stockée et fonction max


Sujet :

SQL Procédural MySQL

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 21
    Par défaut Procédure stockée et fonction max
    Bonjour je réalise actuellement des procédures stockée et je rencontre un probléme Je voudrai qu'une fonction me retourne le max d'un identifiant. J'ai donc tapé ceci ça passe mais ça ne renvoit rien help!

    Create function addadresse() returns integer
    return max(id_adresse);

    A l'execution cela me signale invalid use of group fonction

    Help me!

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 673
    Par défaut
    Je propose bêtement : il ne faudrait pas écrire une requête SQL qui calcule le max et la procédure stockée renverrait cette valeur (d'ailleurs quel serait alors l'intérêt d'une telle procédure stockée) ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 21
    Par défaut
    Ben oui j'ai essayé!
    create function addaddresse() returns integer
    declare idmax integer;
    set idmax=select max(id_adresse) from adresse;
    return idmax;

    Mais ça ne marche pas

    Help!

  4. #4
    Membre expérimenté

    Étudiant
    Inscrit en
    Mai 2006
    Messages
    200
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 200
    Par défaut
    je ne suis pas sur mais il ne faudrait pas mettre un begin et un end

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    
    Create function addadresse() returns integer
    begin
    return max(id_adresse);
    end;

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 21
    Par défaut
    Voila la procédure que je voulai écrire en entier et qui marche!

    DELIMITER //

    CREATE PROCEDURE addadresse(id_type_adresse integer,adresse varchar(150),code_postal varchar(20),ville varchar(150),numero_tel varchar(20),numero_tel_port varchar(20),numero_fax varchar(20),email varchar(255),pays varchar(50),region varchar(100))
    BEGIN
    insert into adresse(id_adresse,id_type_adresse,adresse,code_postal,ville,numero_tel,numero_tel_port,numero_fax,email,pays,region)
    values (max(id_adresse),id_type_adresse,adresse,code_postal,ville,numero_tel,numero_tel_port,numero_fax,email,pays,region);
    SELECT max(id_adresse) from adresse;
    END;
    //

    DELIMITER ;

    Maintenant ma question est comment puis je récuperer le max de id_adresse dans une autre procédure?

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 21
    Par défaut
    Avez vous déja fait des procédure stockés avec query browser? Est ce que cela marche bien? moi je suis souvent obligé de me battre pour que ça passe!

  7. #7
    Xo
    Xo est déconnecté
    Membre Expert
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 52

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Par défaut
    Le langage SQL n'est pas un langage procédural : Toutes les questions concernant le langage procédural d'un SGBD doivent être posées dans le forum de ce SGBD

    Merci de spécifier votre SGBD, afin qu'un modérateur déplace ce message.
    "Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément." Nicolas Boileau

    "Expliquer empêche de comprendre si cela dispense de chercher"

    Quiz Oracle : venez tester vos connaissances !

    La FAQ Oracle : 138 réponses à vos questions
    Aidez-nous à la compléter

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 21
    Par défaut
    C'est du mysql 5 désolé je pensai étre au bon endroit

  9. #9
    Membre Expert
    Avatar de Alexandre T
    Homme Profil pro
    Ingénieur DevOps
    Inscrit en
    Mai 2002
    Messages
    1 214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur DevOps
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 214
    Par défaut
    Je déplace ...

    PS : si je touche 1 euro à chaque fois que je déplace une discussion de SQL vers un SGBD spécifique, je suis riche en un mois !
    Alexandre Tranchant
    Ingénieur DevOps pour le Ministère de l'Écologie
    Retrouvez mes articles sur PHP et Symfony

Discussions similaires

  1. Réponses: 9
    Dernier message: 25/08/2021, 15h52
  2. Procédure stockée dans fonction
    Par RomJo dans le forum DB2
    Réponses: 18
    Dernier message: 19/04/2010, 14h32
  3. Réponses: 4
    Dernier message: 24/10/2008, 16h07
  4. Procédure stockée ou fonction retournant une table
    Par sessime dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 11/04/2008, 00h22
  5. procédure stockée et fonction max
    Par hermine dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 05/07/2007, 14h51

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