(PHP 3, PHP 4 , PHP 5)
mysql_affected_rows -- Retourne le nombre de lignes affectées lors de la dernière requête SQL MySQLmysql_affected_rows() retourne le nombre de lignes affectées lors de la dernière requête INSERT, UPDATE ou DELETE sur le serveur associé à l'identifiant de connexion link_identifier. Si link_identifier n'est pas précisé, mysql_affected_rows() utilise la dernière connexion ouverte.
Note : Si vous utilisez les transactions, vous devez appeler mysql_affected_rows() après votre INSERT, UPDATE, ou DELETE et non après la validation.
Si la dernière requête était un DELETE sans clause WHERE, tous les enregistrements ont été effacés, mais mysql_affected_rows() va retourner 0.
Note : Lorsque vous utilisez UPDATE, MySQL ne mettera pas à jour les colonnes si la nouvelle valeur est identique à l'ancienne. Cela fait que mysql_affected_rows() ne représentera pas forcément le nombre de lignes correspondantes mais plutôt le nombre de lignes qui ont été réellement affectées par la requête.
La requête REPLACE commence par effacer les enregistrements possédant la même clé primaire et ensuite, insert les nouveaux enregistrements. Cette fonction retourne le nombre d'enregistrements effacés ainsi que le nombre d'enregistrements insérés.
Pour recupérer le nombre de lignes retournées par un SELECT, il est également possible d'utiliser la fonction mysql_num_rows().
Si la dernière requête a échoué, mysql_affected_rows() retourne -1.
Exemple 2. Requête SQL Update
Le script ci-dessus devrait afficher :
|
Voir aussi mysql_num_rows() et mysql_info().
Précédent | Sommaire | Suivant |
MySQL | Niveau supérieur | mysql_change_user |