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 相关文章推荐
ftp类(myftp.php)
Oct 09 PHP
PHP脚本的10个技巧(4)
Oct 09 PHP
PHP 组件化编程技巧
Jun 06 PHP
php实现网站插件机制的方法
Nov 10 PHP
CodeIgniter实现从网站抓取图片并自动下载到文件夹里的方法
Jun 17 PHP
Ubuntu下安装PHP的mongodb扩展操作命令
Jul 04 PHP
提交表单后 PHP获取提交内容的实现方法
May 25 PHP
thinkPHP订单数字提醒功能的实现方法
Dec 01 PHP
微信公众号开发之通过接口删除菜单
Feb 20 PHP
php workerman定时任务的实现代码
Dec 23 PHP
对php 判断http还是https,以及获得当前url的方法详解
Jan 15 PHP
Yii框架参数配置文件params用法实例分析
Sep 11 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
url decode problem 解决方法
2011/12/26 PHP
php 遍历目录,生成目录下每个文件的md5值并写入到结果文件中
2016/12/12 PHP
php利用嵌套数组拼接与解析json的方法
2017/02/07 PHP
查询绑定数据岛的表格中的文本并修改显示方式的js代码
2009/12/15 Javascript
读jQuery之一(对象的组成)
2011/06/11 Javascript
S2SH整合JQuery+Ajax实现登录验证功能实现代码
2013/01/30 Javascript
关于jquery中全局函数each使用介绍
2013/12/10 Javascript
js中精确计算加法和减法示例
2014/03/28 Javascript
JavaScript实现在页面间传值的方法
2015/04/07 Javascript
JS实现一个简单的日历
2017/02/22 Javascript
ES6新增的math,Number方法
2017/08/06 Javascript
关于react-router/react-router-dom v4 history不能访问问题的解决
2018/01/08 Javascript
详解在Node.js中发起HTTP请求的5种方法
2019/01/10 Javascript
微信小程序云函数添加数据到数据库的方法
2020/03/04 Javascript
Vue使用Three.js加载glTF模型的方法详解
2020/06/14 Javascript
jQuery实现滑动开关效果
2020/08/02 jQuery
原生JavaScript实现留言板
2021/01/10 Javascript
[51:17]完美世界DOTA2联赛循环赛Inki vs DeMonsTer 第二场 10月30日
2020/10/31 DOTA
python生成随机验证码(中文验证码)示例
2014/04/03 Python
浅谈Python中函数的参数传递
2016/06/21 Python
python 获取毫秒数,计算调用时长的方法
2019/02/20 Python
python如何实现从视频中提取每秒图片
2020/10/22 Python
解决python ThreadPoolExecutor 线程池中的异常捕获问题
2020/04/08 Python
Python调用C/C++的方法解析
2020/08/05 Python
解决margin 外边距合并问题
2019/07/03 HTML / CSS
露营世界:Camping World
2017/02/02 全球购物
拥有超过850家商店的美国在线派对商店:Party City
2018/10/21 全球购物
速卖通欧盟:Aliexpress EU
2020/08/19 全球购物
简述安装Slackware Linux系统的过程
2012/05/08 面试题
饲料采购员岗位职责
2013/12/19 职场文书
北京奥运会口号
2014/06/21 职场文书
委托书格式
2014/08/01 职场文书
小学趣味运动会加油稿
2014/09/25 职场文书
工作态度怎么写
2015/06/25 职场文书
入党申请书怎么写?
2019/06/21 职场文书
python基础之while循环语句的使用
2021/04/20 Python