my_bool mysql_eof(MYSQL_RES *result)
Description
Cette fonction est désapprouvée. Vous pouvez utiliser
mysql_errno()
ou
mysql_error()
à la place.
mysql_eof()
détermine si la dernière
ligne d'un jeu de résultats a été lue.
Si vous obtenez un jeu de résultats suite à un appel à
mysql_store_result()
, le client re¸ois le
jeu entier en une seule opération. Dans ce cas, un retour
NULL
de la fonction
mysql_fetch_row()
signifie toujours que la
fin du jeu de résultat a été atteinte et il n'est donc pas
nécessaire d'appeler mysql_eof()
. Lors
d'une utilisation avec
mysql_store_result()
,
mysql_eof()
retournera toujours true.
D'un autre côté, si vous utilisez
mysql_use_result()
pour initialiser la
récupération d'un jeu de résultats, les lignes sont
obtenues du serveur une par une lors des appels successifs de
mysql_fetch_row()
. Puisque une erreur peut
survenir à la connexion durant ce processus, une valeur de
retour NULL
de la part de
mysql_fetch_row()
ne signifie pas
nécessairement que la fin du jeu de résultats a été
atteinte normalement. Dans ce cas, vous pouvez utiliser
mysql_eof()
pour déterminer ce qui est
arrivé. mysql_eof()
retourne une valeur
non-nulle si la fin du jeu de résultats a été atteinte et
zéro en cas d'erreur.
Historiquement, mysql_eof()
a vu le jour
avant les fonctions d'erreurs standards de MySQL
mysql_errno()
et
mysql_error()
. Puisque ces fonctions
fournissent les mêmes informations, leur utilisation est
préférée à mysql_eof()
, qui est
maintenant désapprouvée. (En fait, elles fournissent plus
d'informations, car mysql_eof()
ne retourne
que des valeurs booléennes alors que les fonctions d'erreurs
indiquent les raisons des erreurs lorsqu'elles surviennent.)
Valeur de retour
Zéro si aucune erreur n'est survenue. Autre chose dans le cas contraire.
Erreurs
Aucune.
Exemple
L'exemple suivant vous montre comment vous devez utiliser
mysql_eof()
:
mysql_query(&mysql,"SELECT * FROM une_table"); result = mysql_use_result(&mysql); while((row = mysql_fetch_row(result))) { // traite les données } if(!mysql_eof(result)) // mysql_fetch_row() failed due to an error { fprintf(stderr, "Erreur : %s\n", mysql_error(&mysql)); }
Vous pouvez reproduire la même chose avec les fonctions d'erreurs de MySQL :
mysql_query(&mysql,"SELECT * FROM une_table"); result = mysql_use_result(&mysql); while((row = mysql_fetch_row(result))) { // traite les données } if(mysql_errno(&mysql)) // mysql_fetch_row() ne marche pas à cause d'une erreur { fprintf(stderr, "Erreur : %s\n", mysql_error(&mysql)); }
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.