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

Requêtes MySQL Discussion :

Dernier ID > quel sera l'index autoincremet ?


Sujet :

Requêtes MySQL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 13
    Points : 12
    Points
    12
    Par défaut Dernier ID > quel sera l'index autoincremet ?
    Salut à tous,

    Pour le moment je m'en sort pour obtenir le dernier index d'un tableau grâce à
    SELECT max(id).

    Mais je me suis rendu compte (heureusement) que si la table as un index qui sera auto incrementer à 5 par exemple et que la table soit vide, ma requette retourne toujours NULL / 0.

    Comment faire pour connaitre precisement quel sera l'index suivant dans une table VIDE ?

    Merci d'avance.

  2. #2
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 284
    Points : 11 741
    Points
    11 741
    Par défaut
    si ta table est déjà vide, tu n'as qu'à faire un TRUNCATE, cela remet l'auto_increment à 1.

    Ceci dit :
    - max(id) + 1 sera parfois faux dans un contexte de concurrence

    - tu n'as pas besoin de connaître l'ID avant, ni aucun moyen fiable de la prédire

    - ce dont tu as besoin, c'est de récupérer après l'insertion l'ID attribuée automatiquement ; c'est ce que te permet LAST_INSERT_ID() ou mysql_insert_id()
    Antoun
    Expert Tableau, Essbase, BO, SQL

    La bible d'Essbase, 2ème édition

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 13
    Points : 12
    Points
    12
    Par défaut
    Merci beaucoup, je vais suivre tes conseilles.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/12/2008, 15h00
  2. Réponses: 5
    Dernier message: 13/09/2007, 16h42
  3. Quel est l'index qui sert pour les For Each ?
    Par Nixar dans le forum VB.NET
    Réponses: 5
    Dernier message: 04/06/2007, 08h23
  4. Vous qui êtes sous une "vieille" version de Windows, quel sera votre prochain OS?
    Par NicolasJolet dans le forum Windows 2000/Me/98/95
    Réponses: 7
    Dernier message: 23/05/2007, 14h43
  5. Réponses: 1
    Dernier message: 04/04/2007, 13h43

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