PHP PDOStatement::closeCursor讲解


Posted in PHP onJanuary 30, 2019

PDOStatement::closeCursor

PDOStatement::closeCursor — 关闭游标,使语句能再次被执行。(PHP 5 >= 5.1.0, PECL pdo >= 0.9.0)

说明

语法

bool PDOStatement::closeCursor ( void )

PDOStatement::closeCursor()释放到数据库服务的连接,以便发出其他 SQL 语句,但使语句处于一个可以被再次执行的状态。

当上一个执行的 PDOStatement 对象仍有未取行时,此方法对那些不支持再执行一个PDOStatement 对象的数据库驱动非常有用。 如果数据库驱动受此限制,则可能出现失序错误的问题。

PDOStatement::closeCursor()要么是一个可选驱动的特有方法(效率最高)来实现,要么是在没有驱动特定的功能时作为一般的PDO 备用来实现。一般的备用语义上与下面的 PHP 代码相同:

<?php
do {
  while ($stmt->fetch())
    ;
  if (!$stmt->nextRowset())
    break;
} while (true);
?>

返回值

成功时返回 TRUE, 或者在失败时返回 FALSE。

实例

一个PDOStatement::closeCursor()的例子

在下面例子中,$stmt PDOStatement 对象返回多行,但应用程序只取第一行,让 PDOStatement 对象处于一个有未取行的状态。为确保应用程序对所有数据库驱动都能正常运行,在执行 $otherStmt PDOStatement 对象前,$stmt 调用一次 PDOStatement::closeCursor()

<?php
/* 创建一个 PDOStatement 对象 */
$stmt = $dbh->prepare('SELECT foo FROM bar');
/* 创建第二个 PDOStatement 对象 */
$otherStmt = $dbh->prepare('SELECT foobaz FROM foobar');
/* 执行第一条语句 */
$stmt->execute();
/* 从结果集中只取出第一行 */
$stmt->fetch();
/* The following call to closeCursor() may be required by some drivers */
$stmt->closeCursor();
/* 现在可以执行第二条语句了 */
$otherStmt->execute();
?>

总结

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

PHP 相关文章推荐
ADODB类使用
Nov 25 PHP
php 正确解码javascript中通过escape编码后的字符
Jan 28 PHP
memcached 和 mysql 主从环境下php开发代码详解
May 16 PHP
PHP fopen 读取带中文URL地址的一点见解
Sep 25 PHP
基于php设计模式中单例模式的应用分析
May 15 PHP
php递归获取目录内文件(包含子目录)封装类分享
Dec 25 PHP
php中heredoc与nowdoc介绍
Dec 25 PHP
PHP flush 函数使用注意事项
Aug 26 PHP
yii2.0数据库迁移教程【多个数据库同时同步数据】
Oct 08 PHP
thinkPHP中volist标签用法示例
Dec 06 PHP
php+ajax实现异步上传文件或图片功能
Jul 18 PHP
Laravel框架使用Redis的方法详解
May 30 PHP
PHP PDOStatement::debugDumpParams讲解
Jan 30 #PHP
PHP PDOStatement::bindValue讲解
Jan 30 #PHP
PHP PDOStatement::bindParam讲解
Jan 30 #PHP
PHP PDOStatement::bindColumn讲解
Jan 30 #PHP
PHP连接及操作PostgreSQL数据库的方法详解
Jan 30 #PHP
PDO::setAttribute讲解
Jan 29 #PHP
PDO::rollBack讲解
Jan 29 #PHP
You might like
PHP基础之运算符的使用方法
2013/04/28 PHP
支持生僻字且自动识别utf-8编码的php汉字转拼音类
2014/06/27 PHP
php设计模式之简单工厂模式详解
2014/09/04 PHP
功能强大的php文件上传类
2016/08/29 PHP
javascript中的作用域scope介绍
2010/12/28 Javascript
密码强度检测效果实现原理与代码
2013/01/04 Javascript
关闭浏览器窗口弹出提示框并且可以控制其失效
2014/04/15 Javascript
分享20个提升网站界面体验的jQuery插件
2014/12/15 Javascript
jquery实现带渐变淡入淡出并向右依次展开的多级菜单效果实例
2015/08/22 Javascript
基于jquery编写的放大镜插件
2016/03/23 Javascript
React-Native中props具体使用详解
2017/09/04 Javascript
jQuery Validate插件ajax方式验证输入值的实例
2017/12/21 jQuery
JS实现生成由字母与数字组合的随机字符串功能详解
2018/05/25 Javascript
JavaScript防止全局变量污染的方法总结
2018/08/02 Javascript
微信小程序使用字体图标的方法
2019/05/23 Javascript
JS实现表单中点击小眼睛显示隐藏密码框中的密码
2020/04/13 Javascript
[43:51]2018DOTA2亚洲邀请赛3月30日 小组赛B组 EG VS Secret
2018/03/31 DOTA
Python的语言类型(详解)
2017/06/24 Python
如何使用python把ppt转换成pdf
2019/06/29 Python
python快速编写单行注释多行注释的方法
2019/07/31 Python
pyhton中__pycache__文件夹的产生与作用详解
2019/11/24 Python
Python faker生成器生成虚拟数据代码实例
2020/07/20 Python
python对输出的奇数偶数排序实例代码
2020/12/04 Python
python re.match()用法相关示例
2021/01/27 Python
Python入门基础之数字字符串与列表
2021/02/01 Python
SkinCeuticals官网:美国药妆品牌
2018/04/19 全球购物
您在慕尼黑的跑步商店:Lauf-bar
2019/10/11 全球购物
应用电子专业学生的自我评价
2013/10/16 职场文书
雷人标语集锦
2014/06/19 职场文书
反四风个人对照检查材料
2014/09/26 职场文书
银行反洗钱宣传活动总结
2015/05/08 职场文书
2015年计划生育协会工作总结
2015/05/13 职场文书
行政诉讼答辩状
2015/05/21 职场文书
股东出资协议书
2016/03/21 职场文书
2019初中学生入团申请书
2019/06/27 职场文书
解析MySQL binlog
2021/06/11 MySQL