Partage
  • Partager sur Facebook
  • Partager sur Twitter

delete et index

Sujet résolu
    9 juin 2010 à 13:12:59

    Bonjour,
    voilà, je fais des essais et des essais, ce qui fait que ma BDD se vide et se remplit... je me retrouve donc avec des id qui ont des trous (j'entends pas id les identifiant en auto-incrémentation).
    Donc deux questions :
    si je vide la table avec delete sans précision de "cible", la table reprendra-t-elle les identifiant à 0. ?
    Sinon, existe-til un moyen de remettre les "pendules à l'heure", c'est à dire de remettre les id de 0 à la fin de la liste avec 0 1 2 3...
    J'espère avoir été clair.
    Vous remerciant par avance pour vos lumières.

    • Partager sur Facebook
    • Partager sur Twitter
      9 juin 2010 à 13:46:55

      > si je vide la table avec delete sans précision de "cible", la table reprendra-t-elle les identifiant à 0. ?

      Non.

      > Sinon, existe-til un moyen de remettre les "pendules à l'heure", c'est à dire de remettre les id de 0 à la fin de la liste avec 0 1 2 3...

      Sous MySQL essaie ALTER TABLE SET AUTO_INCREMENT. Et ça commence à 1 pas 0.
      • Partager sur Facebook
      • Partager sur Twitter
        9 juin 2010 à 14:01:59

        En même temps, c'est des identifiants.
        T'en as rien à faire de la valeur qu'ils ont, s'ils ont des trous, ou s'ils commencent à 1 ou à 52346.

        Si ça te pose problème, c'est que la requête qui pose problème n'est pas faite de la bonne manière.
        • Partager sur Facebook
        • Partager sur Twitter
          9 juin 2010 à 14:06:07

          Ben quand tu créé une BDD de test c'est quand même beaucoup plus pratique d'avoir toujours les mêmes valeurs (enfin ça c'est le script de création de BDD de test qui doit s'en occuper...)
          • Partager sur Facebook
          • Partager sur Twitter
            9 juin 2010 à 17:28:21

            Salut,
            et merci à tous. Désolé pour cette absence... besoin de pain.
            Bref.
            Pour répondre à spacefox, non, pas de problème. En fait c'est pour avoir un truc "clean", mais c'est purement psychologique.
            Sinon, j'ai essayé " ALTER TABLE SET AUTO_INCREMENT "... mais j'ai un message d'erreur.
            Par contre (Lord casque noir), je ne comprends pas vraiment ta dernière remarque.
            L'idée, c'était que le jour ou je dois faire un boulot pour quelqu'un, je trouvais plus sympa de lui donner quelque chose avec une incrémentation plus "linéaire". Mais rien de grave.
            En tout cas, merci à tous les deux.
            D.
            • Partager sur Facebook
            • Partager sur Twitter
              9 juin 2010 à 17:53:34

              > (Lord casque noir), je ne comprends pas vraiment ta dernière remarque.

              Quand tu fais des unit tests il vaut mieux que la BDD de test contienne toujours la même chose sinon le résultat risque d'être un peu aléatoire ;)
              • Partager sur Facebook
              • Partager sur Twitter
                9 juin 2010 à 18:16:15

                Hum... je pense voir ce que tu veux dire, sauf que j'ai l'impression que quand on commence à faire des bdd soit même, sans utiliser de cms type joomla, c'est pour pouvoir adapter à des nécessités qui n'ont le plus souvent rien à voir les unes avec les autres.
                Donc, systématiser un contenu pour pouvoir comparer les résultats (si c'est bien ce que tu veux dire), je comprends, mais (et je suis tout neuf dans le domaine) cela me semble parfois difficile.
                Exemple, un site pour un galeriste et un site de contenu comme celui que je développe (bénévolement --> http://www.3atp.org [je suis un ancien restaurateur de tableaux] et c'est pour lui que j'aimerais développer ma première vrai BDD avec admin et tout le toutim) n'ont rien à voir.
                Mais j'essaierais d'adopter cette attitude de systématisation.
                Encore merci pour tes conseils.
                • Partager sur Facebook
                • Partager sur Twitter
                  9 juin 2010 à 19:47:48

                  C'était pas ça en fait ;)

                  Des unit tests c'est un programme qui teste ton programme, par exemple il appelle la fonction machin et vérifie que la valeur renvoyée est bien celle attendue.

                  Donc si la base de données fait partir du test il faut que le contenu de la base lors des tests soit toujours le même, sinon les tests vont foirer...
                  • Partager sur Facebook
                  • Partager sur Twitter
                    10 juin 2010 à 10:37:30

                    OHHH, j'en suis pas là... hélas. Mais je prends en compte et vais allez voir sur le net si je trouve des renseignements la-dessus.
                    Merci pour cette donnée qui semble particulièrement utile.
                    • Partager sur Facebook
                    • Partager sur Twitter

                    delete et index

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown