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 include,include_once,require,require_once
Sep 05 PHP
php curl post 时出现的问题解决
Jan 30 PHP
PHPThumb图片处理实例
May 03 PHP
php curl 获取https请求的2种方法
Apr 27 PHP
php简单smarty入门程序实例
Jun 11 PHP
PHP读取PPT文件的方法
Dec 10 PHP
CakePHP框架Session设置方法分析
Feb 23 PHP
PHP实现的随机红包算法示例
Aug 14 PHP
PHP使用curl_multi_select解决curl_multi网页假死问题的方法
Aug 15 PHP
YII框架学习笔记之命名空间、操作响应与视图操作示例
Apr 30 PHP
Laravel使用原生sql语句并调用的方法
Oct 09 PHP
php设计模式之模板模式实例分析【星际争霸游戏案例】
Mar 24 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
造就帕卡马拉的帕卡斯是怎么被发现的
2021/03/03 咖啡文化
PHP4 与 MySQL 交互使用
2006/10/09 PHP
php中sql注入漏洞示例 sql注入漏洞修复
2014/01/24 PHP
php阻止页面后退的方法分享
2014/02/17 PHP
linux使用crontab实现PHP执行计划定时任务
2014/05/10 PHP
php实例分享之mysql数据备份
2014/05/19 PHP
PHP生成及获取JSON文件的方法
2016/08/23 PHP
showModelessDialog()使用详解
2006/09/21 Javascript
javascript hashtable实现代码
2009/10/13 Javascript
JQuery模板插件 jquery.tmpl 动态ajax扩展
2011/11/10 Javascript
js 调用百度地图api并在地图上进行打点添加标注
2014/05/13 Javascript
JS获取时间的方法
2015/01/21 Javascript
JavaScript检查数字是否为整数或浮点数的方法
2015/06/09 Javascript
javascript 用函数实现继承详解
2016/05/28 Javascript
BootStrap selectpicker
2016/06/20 Javascript
jquery 实时监听输入框值变化的完美方法(必看)
2017/01/26 Javascript
angular ng-click防止重复提交实例
2017/06/16 Javascript
Vue组件选项props实例详解
2017/08/18 Javascript
JavaScript中重名的函数与对象示例详析
2017/09/28 Javascript
基于JS实现视频上传显示进度条
2020/05/12 Javascript
Vue实现鼠标经过文字显示悬浮框效果的示例代码
2020/10/14 Javascript
[02:43]2018DOTA2亚洲邀请赛主赛事首日TOP5
2018/04/04 DOTA
[02:01]2018完美盛典-开场舞《双子星》
2018/12/16 DOTA
python求列表交集的方法汇总
2014/11/10 Python
Python正则表达式使用范例分享
2016/12/04 Python
Flask解决跨域的问题示例代码
2018/02/12 Python
33个Python爬虫项目实战(推荐)
2019/07/08 Python
导致python中import错误的原因是什么
2020/07/01 Python
超酷炫 CSS3垂直手风琴菜单
2016/06/28 HTML / CSS
POP文化和音乐灵感的时尚:Hot Topic
2019/06/19 全球购物
怎样写演讲稿
2014/01/04 职场文书
《北京的春节》教学反思
2014/04/07 职场文书
《恐龙》教学反思
2014/04/27 职场文书
纪念9.18事变演讲稿
2014/09/14 职场文书
2015年银行信贷员工作总结
2015/05/19 职场文书
mybatis使用oracle进行添加数据的方法
2021/04/27 Oracle