Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1082 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  MYSQL : Problème pour retrouver la clé primaire dans les metadatas

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

MYSQL : Problème pour retrouver la clé primaire dans les metadatas

n°2046602
redlegoren​g
Posté le 05-01-2011 à 18:41:00  profilanswer
 

Bonjour !
 
Je rencontre un problème lorsque j'essaye de retrouver la clé primaire via la fonction php mysql_fetch_field.
 
Dans un cas très simple, tout marche bien, la valeur "primary_key" est bien à 1 pour mon champ id, et à 0 pour les autres.
Lorsque je classe mes résultats par id, tout marche encore comme il faut.
MAIS, à ma grande surprise, lorsque je classe mes resultats par "rand()", la valeur "primary_key" est à 0 pour tous les champs, y compris id...
 
Je vous laisse un petit extrait de code qui montre le problème.
 
Est-ce que c'est un bug ? Cela vient-il de la fonction php, ou de mysql ? (php 5.3.2, mysql 5.1.51)
Existe-t-il une manière de quand même obtenir le résultat souhaité sans devoir faire une requête spécifique ?
 
Merci beaucoup d'avance !
 
Olivier
 
 

<?php
 
mysql_connect('127.0.0.1', 'NAME', 'PASS');
mysql_select_db('DATABASE');
 
echo "<h3>Unordered</h3>";
showStructure('SELECT * FROM sample');
 
echo "<h3>Order by id</h3>";
showStructure('SELECT * FROM sample ORDER BY id');
 
echo "<h3>Order by rand()</h3>";
showStructure('SELECT * FROM sample ORDER BY rand()');
 
function showStructure($query){
 
 $result = mysql_query($query);
 
 $i = 0;
 while ($i < mysql_num_fields($result)) {
    $meta = mysql_fetch_field($result, $i);
    echo "  name:         $meta->name
            primary_key:  $meta->primary_key";
    $i++;
 }
}
?>


 
Qui donne :
 
Unordered
 
     name:         id
     primary_key:  1
     
     name:         title
     primary_key:  0
     
Order by id
 
     name:         id
     primary_key:  1
     
     name:         title
     primary_key:  0
     
Order by rand()
 
     name:         id
     primary_key:  0
     
     name:         title
     primary_key:  0
 

mood
Publicité
Posté le 05-01-2011 à 18:41:00  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  MYSQL : Problème pour retrouver la clé primaire dans les metadatas

 

Sujets relatifs
Problème avec la fonction update pour modifié une table d'un BDD [résoProbleme allocation dynamique
Probleme : Tableau perd ses valeurs une fois sortie de la boucle[Résolu] Problème Commande ZIP Unix
PaperVision3D : passer de la 2d a la 3d = problème de coordonnées :-/Problème mysql fetch array [SOLVED]
probleme avec hauteur de div à 100%probleme avec tableau
Url rewriting , htaccess problème 
Plus de sujets relatifs à : MYSQL : Problème pour retrouver la clé primaire dans les metadatas


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR