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 :

Connaître le prochain ID auto-increment


Sujet :

SQL Procédural MySQL

  1. #1
    Membre actif Avatar de Nicomart
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    205
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 205
    Points : 210
    Points
    210
    Par défaut Connaître le prochain ID auto-increment
    Bonjour à tous,

    dans une page (php) d'ajout dans une table d'une base mysql, je dois afficher l'identifiant de l'enregistrement (clé primaire, auto-incrémentée) AVANT que la requête d'insert ne soit effectuée.

    J'ai bien pensé à un SELECT MAX(`monid`) FROM matable; puis l'afficher avec une incrémentation de 1, mais cela ne tient pas la route si le (ou les) derniers enregistrements de la table ont été supprimés.

    Une solution inélégante au possible consisterait à faire un enregistrement bidon juste avant l'insertion, récupérer son identifiant, supprimer cet enregistrement et ensuite afficher l'identifiant incrémenté de 1.

    J'espère qu'il existe plus simple et plus élégant.

    Merci de vos réponses

    Nico

  2. #2
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 925
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 925
    Points : 6 040
    Points
    6 040
    Par défaut
    Il y a LAST_INSERT_ID qui retourne le dernier n° affecté pour un auto_increment.
    http://dev.mysql.com/doc/refman/5.0/...functions.html

  3. #3
    Membre habitué
    Inscrit en
    Octobre 2006
    Messages
    124
    Détails du profil
    Informations personnelles :
    Âge : 73

    Informations forums :
    Inscription : Octobre 2006
    Messages : 124
    Points : 126
    Points
    126
    Par défaut
    Bonjour,
    il me semble qu'une solution serait de créer un trigger after insert qui mémorise dans une table le last_insert_id();

    Cordialement
    Marc Salama

  4. #4
    Membre actif Avatar de Nicomart
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    205
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 205
    Points : 210
    Points
    210
    Par défaut
    Merci de vos réponses, je vais fouiner dans cette direction

  5. #5
    Membre actif Avatar de Nicomart
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    205
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 205
    Points : 210
    Points
    210
    Par défaut
    Bon, je viens d'essayer de mettre en oeuvre. Dans la théorie, ça marche, mais dans la pratique, mysql query n'accepte pas deux requêtes à la fois :s
    Je mets un nouveau post racontant mes malheurs, et j'update celui ci dès qu'il est posté pour le mettre en lien...

    edit : http://www.developpez.net/forums/sho...01#post2345301

    re-edit : solution adoptée détaillée dans le lien

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. prochaine valeur de l'auto increment
    Par bp dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 12/05/2005, 15h17
  2. obtenir le prochain ID en mode auto-increment
    Par arnololo dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 03/12/2003, 17h43
  3. Auto Increment
    Par Guizz dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 23/06/2003, 18h36
  4. Nom du champs auto-incrementé
    Par norroy dans le forum Requêtes
    Réponses: 2
    Dernier message: 17/06/2003, 18h30
  5. Pb d'auto-incrément sur une table v7
    Par Nivux dans le forum Paradox
    Réponses: 9
    Dernier message: 26/12/2002, 12h05

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