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 :

Numéroter une table


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 211
    Par défaut Numéroter une table
    Bonjour,

    ce que je veux faire dois être simple pour vous ... mais j'ai personnelement quelques difficultés.

    J'ai une table qui contient des données.
    Je viens d'ajouter un champ "nombre" à une table.

    J'aimerai indiquer dans ce champs un nombre de 1 à n (pour les n ligne déja existant dans ma table).
    Donc à la ligne 1, il faut 1 dans le champ nombre.
    A la ligne 2, il faut 2 dans le champ nombre.

    PS la clé unique dans cette table est mise sur des lettres, donc je ne peux pas utiliser UPDATE ma_table SET nombre = '$num' where id = '$id'";

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $num = 1;
    connect = mysql_connect('localhost','root','') or die ("erreur de connexion");
    mysql_select_db('ma_bd',$connect) or die ("erreur de connexion base");
    $result = mysql_query("SELECT * from ma_table"); 
    while ( $row = mysql_fetch_array($result)){
     
    $pourupdate = "UPDATE ma_table SET nombre = '$num'"; 
    mysql_query($pourupdate);
    $num=$num+1;
    }
    Merci de votre aide

  2. #2
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 058
    Par défaut
    Bonjour,

    Ce qui est curieux dans ta requête, c'est que tu ne l'ordonnes selon aucun critère.
    te renvoie les lignes dans un ordre que tu ne maîtrises absolument pas (puisqu'on ne sait pas, à priori, dans quel ordre sont rangées les lignes dans une table d'un SGBD).
    Il faudrait au moins ordonner les lignes selon un ou plusieurs critères...
    Et l'update ne risque pas de fonctionner, puisque tel qu'il est écrit, toutes les lignes vont se mettre à jour avec le même numéro. Il faut trouver une condition qui permette de distinguer chaque ligne, pour que ça marche

    Qu'entends-tu exactement par :
    la clé unique dans cette table est mise sur des lettres
    ?

    Autre solution : ajouter une colonne auto-incrémentée à la table . Pas sûr que ça marche...
    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  3. #3
    Membre chevronné Avatar de makmaoui
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2007
    Messages
    283
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2007
    Messages : 283
    Par défaut
    Tu peux essayer l'insertion d'un champ auto_increment mais tu devras le définir comme clé primaire et comme il ne peut y a voir qu'une seule clé primaire tu devras supprimer temporairement l'actuelle.

Discussions similaires

  1. [WD14] Numérotation des lignes dans une table
    Par Raptor92 dans le forum WinDev
    Réponses: 22
    Dernier message: 27/07/2009, 11h08
  2. [MySQL] Comment lister de manière numérotée les lignes d'une table
    Par méphistopheles dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 24/12/2006, 17h12
  3. Numérotation des enregitrement dans une table
    Par louroulou dans le forum Access
    Réponses: 8
    Dernier message: 21/06/2006, 17h39
  4. Pb d'auto-incrément sur une table v7
    Par Nivux dans le forum Paradox
    Réponses: 9
    Dernier message: 26/12/2002, 12h05
  5. [ADO] Tester l'existence d'une table
    Par nd25 dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 05/09/2002, 13h55

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