• 技术文章 >后端开发 >php教程

    PDO rowCount()函数详解

    怪我咯怪我咯2017-07-12 10:45:23原创1788
    这篇文章主要介绍了浅谈PDO的rowCount函数的相关使用方法和效率问题,需要的朋友可以参考下

    PDO有一个函数PDOStatement::rowCount返回上一个SQL语句影响的行数。

    rowCount函数对于DELETE, INSERT, 或者UPDATE语句的结果是正确的,但对于select语句则与数据库的实现相关。有些数据库在执行select语句时会将结果集全部读入内存,但对于数量巨大的结果集,这样显然是低效的。大部分的数据库则只会返回结果集的一部分,当需要时再返回其余的结果集,这样无论是内存占用和执行效率都是优化的。对于后一种情况,则rowCount无法返回正确的SELECT语句结果集的行数。 获取正确的SELECT结果的行数有几种方法

    1、使用fetchAll函数 $q = $db->query("SELECT ..."); $rows = $q->fetchAll(); $rowCount = count($rows);
    2、使用sql count函数 $q = $db->query("SELECT count(*) from db;"); $rows = $q->fetch(); $rowCount = $rows[0];

    显然第二种方法更有效率

    实例

    返回删除的行数

    PDOStatement::rowCount() 返回受 DELETE、INSERT、 或 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");
    ?>

    以上实例输出:

    Return number of rows that were deleted:
    Deleted 9 rows.

    以上就是PDO rowCount()函数详解的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:rowCount 详解 函数
    上一篇:php 使用FFmpeg获取视频播放总时长与码率等信息示例代码 下一篇:php处理复杂xml数据示例代码
    大前端线上培训班

    相关文章推荐

    • 你必须了解PHP中什么是抽象类和抽象方法• 怎样使用PHP中的spl_autoload_register() 和 __autoload() 函数?• PHP中怎样去判断对象是否属于一个类?• 五分钟带你看PHP中的接口interface声明与应用(实例详解)• PHP中怎样完成Cookie的创建、读取和删除?

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网