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 相关文章推荐
自定义PHP分页函数
Oct 09 PHP
简单PHP上传图片、删除图片实现代码
May 12 PHP
php实现用户在线时间统计详解
Oct 08 PHP
php 操作符与控制结构
Mar 07 PHP
php中mysql连接和基本操作代码(快速测试使用,简单方便)
Apr 25 PHP
PHP缓存集成库phpFastCache用法
Dec 15 PHP
php 使用array函数实现分页
Feb 13 PHP
PHP弹出对话框技巧详细解读
Sep 26 PHP
PHP的运行机制与原理(底层)
Nov 16 PHP
PHP中用mysqli面向对象打开连接关闭mysql数据库的方法
Nov 05 PHP
PHP PDO操作MySQL基础教程
Jun 05 PHP
PHP的cookie与session原理及用法详解
Sep 27 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学习笔记 用户注册模块用户类以及验证码类
2011/09/20 PHP
php中存储用户ID和密码到mysql数据库的方法
2013/02/06 PHP
php生成百度sitemap站点地图类函数实例
2014/10/17 PHP
通过PHP简单实例介绍文件上传
2015/12/16 PHP
php中文字符串截取多种方法汇总
2016/10/06 PHP
PHP实现类似于C语言的文件读取及解析功能
2017/09/01 PHP
PHP使用Curl实现模拟登录及抓取数据功能示例
2018/04/27 PHP
PHP字符串与数组处理函数用法小结
2020/01/07 PHP
jQuery选择头像并实时显示的代码
2010/06/27 Javascript
精通Javascript系列之数值计算
2011/06/07 Javascript
js图片向右一张张滚动效果实例代码
2013/11/23 Javascript
jQuery 写的简单打字游戏可以提示正确和错误的次数
2014/07/01 Javascript
JS中捕获console.log()输出的方法
2015/04/16 Javascript
莱鸟介绍window.print()方法
2016/01/06 Javascript
Easyui Treegrid改变默认图标的方法
2016/04/29 Javascript
jQuery代码实现表格中点击相应行变色功能
2016/05/09 Javascript
微信小程序 loading(加载中提示框)实例
2016/10/28 Javascript
webpack构建换肤功能的思路详解
2017/11/27 Javascript
详解vue-meta如何让你更优雅的管理头部标签
2018/01/18 Javascript
用Vue编写抽象组件的方法
2019/05/06 Javascript
vue组件命名和props命名代码详解
2019/09/01 Javascript
python解决方案:WindowsError: [Error 2]
2016/08/28 Python
用Pycharm实现鼠标滚轮控制字体大小的方法
2019/01/15 Python
python获取响应某个字段值的3种实现方法
2020/04/30 Python
python实现图片,视频人脸识别(opencv版)
2020/11/18 Python
python自动化发送邮件实例讲解
2021/01/04 Python
详解CSS中iconfont的使用
2015/08/04 HTML / CSS
GAZMAN官网:澳大利亚领先的男装品牌
2019/12/19 全球购物
项目合作意向书范本
2014/04/01 职场文书
警校毕业生自我评价
2014/04/06 职场文书
保证书格式
2015/01/16 职场文书
爱国电影观后感
2015/06/19 职场文书
员工规章制度范本
2015/08/07 职场文书
一波干货,会议主持词开场白范文
2019/05/06 职场文书
导游词之上海杜莎夫人蜡像馆
2019/11/22 职场文书
MySQL之高可用集群部署及故障切换实现
2021/04/22 MySQL