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 :

auto-increment enregistrement table


Sujet :

Requêtes MySQL

  1. #1
    Membre éclairé Avatar de guitz
    Homme Profil pro
    Webdesigner
    Inscrit en
    Juillet 2006
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Juillet 2006
    Messages : 728
    Points : 746
    Points
    746
    Par défaut auto-increment enregistrement table
    Bonsoir,

    J'essaie de créer une table, or une erreur mySQL survient bizarement alors que tout est correctement rempli et pour preuve:

    http://img383.imageshack.us/my.php?image=pbsql9ue.jpg

    Ca c'est pour la table de ma base de données A, mais j'ai aussi une base de données B, et je me demandais si le fait qu'une connexion (à la racine de mon serveur local via PHP) à l'une des tables de celle-ci n'ayant pas été cloturée peut être à l'origine de ce pb.

    Merci pour votre aide.

    gui

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonsoir,

    Je viens de regarder ta requête et je me demandais si c'était une requête générée (phpMyAdmin ou autre) ou si tu as entré la requête toi-même. Je trouve bizarre que tu aies 2 fois 'id' dans celle-ci.

    Si j'avais dû l'écrire moi-même, voilà ce que ça donnerait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE programmes MODIFY id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT;
    J'espère que ça t'aidera!

    webrider

  3. #3
    Membre éclairé Avatar de guitz
    Homme Profil pro
    Webdesigner
    Inscrit en
    Juillet 2006
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Juillet 2006
    Messages : 728
    Points : 746
    Points
    746
    Par défaut
    Salut webrider,

    Merci pour ta réponse, alors j'ai crée cette table via PHPmyAdmin, peux tu me dire stp comment entrer directement le code à la main?

  4. #4
    Membre éprouvé
    Avatar de Biglo
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 537
    Points : 984
    Points
    984
    Par défaut
    Pour exécuter une requête quelconque avec PhpMyAdmin, il suffit de cliquer sur l'onglet SQL.

    Et si je peux me permettre, quelque chose cloche : tu dis que tu essais de créer une table et ton screenshot nous montre une modification de table existante !

  5. #5
    Membre averti Avatar de jota5450
    Inscrit en
    Janvier 2006
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Janvier 2006
    Messages : 263
    Points : 332
    Points
    332
    Par défaut
    slt

    a moin que je sois en train de voir mal l´image, ton message d´erreur ne dit pas que t´as plus d´un champ auto-increment?


    j´ai jamais travailler avec phpmyadmin. la, il montre tous les champs de la table, ou juste celui que tu modifie?

  6. #6
    Membre éclairé Avatar de guitz
    Homme Profil pro
    Webdesigner
    Inscrit en
    Juillet 2006
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Juillet 2006
    Messages : 728
    Points : 746
    Points
    746
    Par défaut
    Captain Biglo,
    En fait j'ai essayé même en recréant ma base ainsi que mon enregistrement ID et rien n'y fait!

    Salut Jota,
    Pour bien voir le fichier image a sa bonne résolution sur imageshack, il faut cliquer dessus

    J'ai beau avoir testé en insérant manuellement le code pas moyen de rajouter AUTO_INCREMENT. Par contre j'ai une autre base de données, dans laquelle ça fonctionne, j'y ai rajouté cette table provisoirement histoire de pouvoir avancer dans mes scripts. Mais pourquoi ne pas pouvoir créer une autre bdd qui fonctionne?

  7. #7
    Membre averti Avatar de jota5450
    Inscrit en
    Janvier 2006
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Janvier 2006
    Messages : 263
    Points : 332
    Points
    332
    Par défaut
    Pour bien voir le fichier image a sa bonne résolution sur imageshack, il faut cliquer dessus



    Je demandais seulement si l´image montre tous les champs de la table, ou juste celui que tu modifie. note: j´ai jamais touche a phpmyadmin.

    L´erreur dit que tu peut avoir seulement un auto-increment.
    si l´image montre tous les champs de la table, c´est etrange, sinon, ......

  8. #8
    Membre éclairé Avatar de guitz
    Homme Profil pro
    Webdesigner
    Inscrit en
    Juillet 2006
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Juillet 2006
    Messages : 728
    Points : 746
    Points
    746
    Par défaut
    Effectivement tous les champs sont présents, aurais -je touché par erreur un fichier dans programFiles/easyPHP/mysql/...

    je vais réinstaller easyPHP en copiant au préalable les fichier de mon autre bdd, mais lesquels à ton avis?

  9. #9
    Membre éclairé Avatar de guitz
    Homme Profil pro
    Webdesigner
    Inscrit en
    Juillet 2006
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Juillet 2006
    Messages : 728
    Points : 746
    Points
    746
    Par défaut
    Alors j'ai trouvé, le message d'erreur était mal ciblé: en fait j'ai omis de mettre une clé primaire dans ma table. J'ai corrigé la chose: ça marche et je peux travailler sereinement!

    Si vous pouviez me donner un coup de pouce pour le code:

    via php, je souhaite effectuer la commande mySQL SELECT, j'ai fouiné sur le net et on me propose toujours une boucle dont je n'ai que faire puisque je souhaite l'appliquer à un enregistrement unique (parmis d'autres choix possibles).

    Soit un enregistrement avec plusieurs colonnes, par exemple

    prenom | nom | age
    -------------------
    claude | zidane | 89

    si je souhaite trouver la valeur de "nom" pour age valant 89, comment dois-je le coder?
    Merci encore

  10. #10
    Membre averti Avatar de jota5450
    Inscrit en
    Janvier 2006
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Janvier 2006
    Messages : 263
    Points : 332
    Points
    332
    Par défaut
    slt


    J´ai pas bien compris ce que tu veut.

    partie sql

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    select nom from table where age = 89

    si tu veut en php, tu devras faire un truc du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    $liaison=mysql_connect (IA_DB_SERVER,IA_DB_USER,IA_DB_PASS)
     or die (" probleme de liaison a MySQL");
    mysql_select_db (IA_DB_DBASE, $liaison);
    $sql="select nom from table where age=89";
    $resultat = mysql_db_query (IA_DB_DBASE,$sql);
     
    while ($registre=mysql_fetch_array($resultat))
    {
    		$champ_1=$registre['nom'];
                    echo $champ_1;
    }
    mysql_close ();

  11. #11
    Membre éclairé Avatar de guitz
    Homme Profil pro
    Webdesigner
    Inscrit en
    Juillet 2006
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Juillet 2006
    Messages : 728
    Points : 746
    Points
    746
    Par défaut
    Coucou jota,
    Alors j'ai utilisé ce code qui marche:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <? 
    include("connexion.php");
     
    $mysql_result = mysql_query("SELECT * FROM t_programmes WHERE prog='prog1'");
     
     while ($ligne = mysql_fetch_array($mysql_result))
       {
          // afficher le nom du CD
     
    	$image = $ligne["image"];
    	echo $image;
    	}
     
    ?>
    Mais ça fait beaucoup pour une requête sur un seul enregistrement non? Ne peut on pas se passer de la boucle?

  12. #12
    Membre éclairé Avatar de guitz
    Homme Profil pro
    Webdesigner
    Inscrit en
    Juillet 2006
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Juillet 2006
    Messages : 728
    Points : 746
    Points
    746
    Par défaut
    En tout cas merci l'essentiel c'est que ça marche

  13. #13
    Membre expérimenté
    Avatar de Adjanakis
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    739
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2004
    Messages : 739
    Points : 1 351
    Points
    1 351
    Par défaut
    Oui tu peux te passer de la boucle, mais à condition d'être certain de ne pas recevoir plus d'une ligne.

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

Discussions similaires

  1. [Requête] creation de table avec un champ auto incrementé
    Par lucke_34 dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 01/05/2020, 00h18
  2. [AC-2003] Remplissage auto d'enregistrement table liées
    Par soussou63 dans le forum IHM
    Réponses: 2
    Dernier message: 13/11/2012, 20h05
  3. Créer 4000 enregistrements dans une tables auto-incrementées
    Par zonekris dans le forum SQL Procédural
    Réponses: 14
    Dernier message: 09/11/2006, 21h18
  4. 2 auto increment dans une meme table
    Par gesualda dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 12/10/2005, 10h31
  5. Pb d'auto-incrément sur une table v7
    Par Nivux dans le forum Paradox
    Réponses: 9
    Dernier message: 26/12/2002, 13h05

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