2010-04-07 3 views
0

Comment lister les enregistrements pour une requête et afficher "no records" lorsqu'aucune ligne n'est renvoyée avec une seule requête? Actuellement, j'utilise une requête COUNT(*) ou une fonction mysql_num_rows(); puis une autre requête dans un ensemble de résultats différent pour lister les données. Pouvez-vous me dire s'il est possible d'accomplir la même chose avec une seule requête? Pourquoi avez-vous besoin d'une autre requête après mysql_num_rows?Comment lister les lignes d'une requête ou afficher 'aucun enregistrement' en utilisant une seule requête

+0

Btw Je suppose que vous utilisez PHP comme vous l'avez mentionné 'mysql_num_rows' Si je me trompe, dites-le moi. –

Répondre

3

Important: Je suppose que l'OP utilise PHP comme (s) il mentionne mysql_num_rows. Et j'espère qu'il me dira si j'ai tort.


Il est de votre responsabilité en PHP de vérifier si le résultat est un ensemble vide ou non. Je ne comprends pas pourquoi vous devez faire une autre requête. Peut-être que vous devez clarifier votre question.

Voici un exemple plus complet:

$link = mysql_connect("localhost", "mysql_user", "mysql_password"); 
mysql_select_db("database", $link); 

$result = mysql_query("SELECT * FROM table1", $link); 

// If if result set contains rows 
if(0 == mysql_num_rows($result)) { 
    echo 'no records'; 
} 
else { // Loop over the result set 
    while(row = mysql_fetch_array($result)) { 
     // do whatever you want with the data here 
    } 
} 

Référence: mysql_num_rows, mysql_fetch_array


Même si vous ne l'utilisez PHP, l'approche est la même dans d'autres langues et il devrait y avoir fonctions similaires disponibles.

0

Pourquoi ne pas simplement exécuter votre requête et vérifier les résultats avec mysql_num_rows?

0

Essayez quelque chose comme suit

if (mysql_num_rows == '0') 
     'No Records' 
    else 
     //YOUE CODE HERE 
Questions connexes