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

PHP & Base de données Discussion :

Update sur auto increment [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Par défaut Update sur auto increment
    Bonjour tout le monde voilà, comme chacun le sait l'auto increment est bien pratique car il évitera à coup sur les doublons, mais quand on supprime un enregistrement, il garde malgrès tout le dernier id en mémoire et ajoute +1

    ex:

    id= 2
    id=3

    Si je supprimer id=3 lors du prochaine ajout j'aurais un id= 4... Et moi j'aimerais évité ça, alors j'ai essayé ça:

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
            $Affich="SELECT * FROM spip_rubriques";
    	$resA= mysql_query($Affich,$cnxS); //on execute la requete
    	$JeuEnregistrement= mysql_fetch_assoc($resA);
    	$compte=1;
     
    	while ($JeuEnregistrement){
                   //Si l'id n'a pas été correctement incrémenté voir exemple au dessus alors...
    		if ($JeuEnregistrement['id_rubrique'] > $compte) {
                            //Je met à jour ma base pour que tous les id soient consécutifs
    			mysql_query("UPDATE spip_rubriques SET id_rubrique= $compte where id_rubrique = $JeuEnregistrement['id_rubrique']");
     
    		}
    		$compte++;
    		$JeuEnregistrement= mysql_fetch_assoc($resA);
    	}

    Mais en fait ça ne me met jamais à jour ma base de donnée... N'est-il pas possible de mettre à jour un auto increment?...

  2. #2
    Membre chevronné Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Par défaut
    je pense que ce que tu souhaite te causera plus de dommage qu'autre choses, ce n'est que mon avis.

    Cela dit, si tu es sur que ce que tu supprime est le dernier enregistrement. tu peux donc :

    Supprimer l'enregistrement.
    Faire commencer l'auto increment à partir de cette enregistrement - 1

    en gros :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    DELETE FROM matable WHERE id = 5;
    ALTER TABLE matable AUTO_INCREMENT = 5;

  3. #3
    Membre émérite Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Par défaut
    Oui c'est une bonne idée! Mais en fait j'ai laché cette idée pour une raison toute bête à laquelle je n'avais pas pensé sur le moment c'est que cet clé primaire est clé étrangère ailleurs, donc...^^

    Mais c'est pas grave pour mon problème global (celui ci n'était que le petit...appelant le grnad...) j'ai trouvé une autre solution, sans aucun update ni rien... Mais merci de l'aide c'est en plus une bonne idée!

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

Discussions similaires

  1. [MySQL] souci update id auto increment
    Par stefanelle dans le forum PHP & Base de données
    Réponses: 24
    Dernier message: 27/02/2009, 16h51
  2. Auto-increment et cles etrangeres sur diferents sgdb.
    Par jota5450 dans le forum Langage SQL
    Réponses: 11
    Dernier message: 26/09/2006, 11h57
  3. Auto-increment est il sur
    Par jeff_! dans le forum Outils
    Réponses: 4
    Dernier message: 30/08/2006, 11h26
  4. [debutant]Auto incrementation sur sql-server 2000
    Par syl2095 dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 18/11/2004, 18h00
  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