Maison >développement back-end >tutoriel php >Explication détaillée de la fonction PDO rowCount()

Explication détaillée de la fonction PDO rowCount()

怪我咯
怪我咯original
2017-07-12 10:45:233908parcourir

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 fonction

PDOStatement::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'instruction

DELETE, 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];

Évidemment, la deuxième méthode est plus efficace

Instance

Retour

Supprimer Row Count

PDOStatement::rowCount() Renvoie le nombre de lignes affectées par une instruction DELETE, INSERT ou UPDATE.

<?php
/*  从 FRUIT 数据表中删除所有行 */
$del = $dbh->prepare(&#39;DELETE FROM fruit&#39;);
$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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn