Maison >développement back-end >tutoriel php >Explication détaillée de la fonction PDO rowCount()
Cet article présente principalement les problèmes d'utilisation et d'efficacité liés à la fonction rowCount de PDO Les amis qui en ont besoin peuvent s'y référer
<.>PDO a une fonctionPDOStatement::rowCount renvoie le nombre de lignes affectées par l'instruction SQL précédente. Le résultat de la fonction
rowCount est correct pour l'instructionDELETE, INSERT ou UPDATE, mais pour l'instruction select, il est lié à l'implémentation de la base de données. Certaines bases de données liront tous les jeux de résultats en mémoire lors de l'exécution d'une instruction select, mais pour un grand nombre de jeux de résultats, cela est évidemment inefficace. La plupart des bases de données ne renvoient qu'une partie du jeu de résultats, puis renvoient le reste du jeu de résultats si nécessaire, afin d'optimiser à la fois l'utilisation de la mémoire et l'efficacité de l'exécution. Dans ce dernier cas, rowCount ne peut pas renvoyer le nombre correct de lignes dans le jeu de résultats de l'instruction SELECT. Il existe plusieurs façons d'obtenir le nombre correct de lignes dans le résultat SELECT
1 Utilisez la fonction fetchAll $q = $db->query("SELECT ..."); ->fetchAll (); $rowCount = count($rows);2. Utilisez la fonction SQL count $q = $db->query("SELECT count(*) from db;"); = $q-> ;fetch(); $rowCount = $rows[0];
Supprimer Row Count
PDOStatement::rowCount() Renvoie le nombre de lignes affectées par une instruction DELETE, INSERT ou UPDATE.<?php /* 从 FRUIT 数据表中删除所有行 */ $del = $dbh->prepare('DELETE FROM fruit'); $del->execute(); /* 返回被删除的行数 */ print("Return number of rows that were deleted:\n"); $count = $del->rowCount(); print("Deleted $count rows.\n"); ?>Sortie de l'exemple ci-dessus :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!