PHP PDOStatement::rowCount讲解


Posted in PHP onFebruary 01, 2019

PDOStatement::rowCount

PDOStatement::rowCount — 返回受上一个 SQL 语句影响的行数(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

说明

语法

int PDOStatement::rowCount ( void )

PDOStatement::rowCount()返回上一个由对应的 PDOStatement 对象执行DELETE、 INSERT、或 UPDATE 语句受影响的行数。

如果上一条由相关 PDOStatement 执行的 SQL 语句是一条 SELECT 语句,有些数据可能返回由此语句返回的行数。但这种方式不能保证对所有数据有效,且对于可移植的应用不应依赖于此方式。

返回值

返回行数。

实例

返回删除的行数

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.

计算由一个 SELECT 语句返回的行数

对于大多数数据库,PDOStatement::rowCount()不能返回受一条 SELECT 语句影响的行数。替代的方法是,使用PDO::query()来发出一条和原打算中的SELECT语句有相同条件表达式的SELECT COUNT(*) 语句,然后用 PDOStatement::fetchColumn()来取得下一行。这样应用程序才能正确执行。

<?php
$sql = "SELECT COUNT(*) FROM fruit WHERE calories > 100";
if ($res = $conn->query($sql)) {
  /* 检查符合 SELECT 语句的行数 */
 if ($res->fetchColumn() > 0) {
    /* 发出一条真正的 SELECT 语句并操作返回的结果 */
     $sql = "SELECT name FROM fruit WHERE calories > 100";
    foreach ($conn->query($sql) as $row) {
      print "Name: " . $row['NAME'] . "\n";
     }
  }
  /* 没有匹配的行 -- 执行其他 */
 else {
   print "No rows matched the query.";
  }
}
$res = null;
$conn = null;
?>

以上实例输出结果为:

apple
banana
orange
pear

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

PHP 相关文章推荐
深入理解PHP之require/include顺序 推荐
Jan 02 PHP
php数组的一些常见操作汇总
Jul 17 PHP
PHP中文件缓存转内存缓存的方法
Dec 06 PHP
自定义php类(查找/修改)xml文档
Mar 26 PHP
淘宝ip地址查询类分享(利用淘宝ip库)
Jan 07 PHP
php通过隐藏表单控件获取到前两个页面的url
Sep 09 PHP
php短址转换实现方法
Feb 25 PHP
php中通过DirectoryIterator删除整个目录的方法
Mar 13 PHP
PHP递归实现层级树状展开
Apr 01 PHP
PHP实现的方程求解示例分析
Nov 11 PHP
PHP实现数据库的增删查改功能及完整代码
Apr 18 PHP
PHP命名空间与自动加载机制的基础介绍
Aug 25 PHP
PHP PDOStatement::nextRowset讲解
Feb 01 #PHP
PHP PDOStatement::getColumnMeta讲解
Feb 01 #PHP
PHP PDOStatement::getAttribute讲解
Feb 01 #PHP
PHP PDOStatement::fetchObject讲解
Feb 01 #PHP
Laravel框架搜索分页功能示例
Feb 01 #PHP
PHP树形结构tree类用法示例
Feb 01 #PHP
PHP-FPM和Nginx的通信机制详解
Feb 01 #PHP
You might like
PHP个人网站架设连环讲(四)
2006/10/09 PHP
PHP开发中常用的三个表单验证函数使用小结
2010/03/03 PHP
基于PHP的cURL快速入门教程 (小偷采集程序)
2011/06/02 PHP
Array of country list in PHP with Zend Framework
2011/10/17 PHP
PHP中使用file_get_contents抓取网页中文乱码问题解决方法
2014/12/17 PHP
php实现文本数据导入SQL SERVER
2015/05/17 PHP
详解PHP中的 input属性(隐藏 只读 限制)
2017/08/14 PHP
PHP使用pdo连接access数据库并循环显示数据操作示例
2018/06/05 PHP
php用wangeditor3实现图片上传功能
2019/08/22 PHP
php实现的简单多进程服务器类完整示例
2020/02/01 PHP
IE6,IE7下js动态加载图片不显示错误
2010/07/17 Javascript
JavaScript实现鼠标点击后层展开效果的方法
2015/05/13 Javascript
jQuery下拉友情链接美化效果代码分享
2015/08/26 Javascript
基于js中的原型(全面讲解)
2017/09/19 Javascript
Nodejs把接收图片base64格式保存为文件存储到服务器上
2018/09/26 NodeJs
解决新建一个vue项目过程中遇到的问题
2020/10/22 Javascript
JS实现可以用键盘方向键控制的动画
2020/12/11 Javascript
Python爬取Coursera课程资源的详细过程
2014/11/04 Python
Python实现爬取知乎神回复简单爬虫代码分享
2015/01/04 Python
python实现树形打印目录结构
2018/03/29 Python
用Pelican搭建一个极简静态博客系统过程解析
2019/08/22 Python
Django高并发负载均衡实现原理详解
2020/04/04 Python
python爬虫学习笔记之Beautifulsoup模块用法详解
2020/04/09 Python
使用tkinter实现三子棋游戏
2021/02/25 Python
CSS3文本换行word-wrap解决英文文本超过固定宽度不换行
2013/10/10 HTML / CSS
CSS3制作酷炫的三维相册效果
2016/07/01 HTML / CSS
new修饰符是起什么作用
2015/06/28 面试题
Linux如何修改文件和文件夹的权限
2013/09/05 面试题
外贸公司实习自我鉴定
2013/09/24 职场文书
如何进行有效的自我评价
2013/09/27 职场文书
敬老模范事迹
2014/05/21 职场文书
党的群众路线调研报告
2014/11/03 职场文书
2015年国税春训心得体会
2015/03/09 职场文书
小学音乐课教学反思
2016/02/18 职场文书
详解解Django 多对多表关系的三种创建方式
2021/08/23 Python
聊聊基于pytorch实现Resnet对本地数据集的训练问题
2022/03/25 Python