PHP PDOStatement::closeCursor讲解
作者:php参考手册 发布时间:2023-06-07 18:23:31
标签:pdo,pdostatement,closecursor
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();
?>


猜你喜欢
- <% '#######以下是一个类文件,下面的注解是调用类的方法#########################
- asp分页,是学习使用asp编程经常遇到的问题,也算是一个经典的问题。本文介绍了一个asp分页源代码例子,希望对初学者有所帮助,本程序文件名
- Spark Streaming VS Structured StreamingSpark Streaming是Spark最初的流处理框架,使
- keras自定义函数时候,正常在模型里自己写好自定义的函数,然后在模型编译的那行代码里写上接口即可。如下所示,focal_loss和fbet
- 本文实例为大家分享了php bootstrap实现简单登录的方法,供大家参考,具体内容如下所有文件 记住是获取name键值对 from 里面
- 本文实例讲述了JavaScript实现二叉树的先序、中序及后序遍历方法。分享给大家供大家参考,具体如下:之前学数据结构的时候,学了二叉树的先
- 我们在使用Golang时,不可避免会遇到异常情况的处理,与Java、Python等语言不同的是,Go中并没有try...catch...这样
- 随着互联网的普及和发展,越来越多的人开始关注个人博客。个人博客是一个非常好的平台,可以让人们分享自己的知识和经验,也可以让人们交流和互动。在
- vue+el使用this.$confirm不能阻断代码往下执行在vue+element ui的前端框架中使用el的confirm弹窗,遇到一
- 网页开发人员常常希望能够了解并掌握多种语言,结果是,学习一门语言的所有内容是棘手的,但是却很容易发现你并没有完全利用那些比较特殊却很有用的标
- 一、route()路由概述功能:将URL绑定到函数路由函数route()的调用有两种方式:静态路由和动态路由二、静态路由和动态路径方式1:静
- Python的集合set原理集合(set)是一个无序的不重复元素序列。可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个
- Python安装selenium包打开命令行窗口,进入python交互环境python尝试导入selenium包,报错,说明尚未安装sele
- 一、描述:以module的方式组件python代码,在磁盘文件清理上复用性更好二、达到目标: 清空过期
- 本文主要分析的是web.py库的application.py这个模块中的代码。总的来说,这个模块主要实现了WSGI兼容的接口,以便应用程序能
- 简介Python发送邮件的教程本人在网站搜索的时候搜索出来了一大堆,但是都是说了一大堆原理然后就推出了实现代码,我测试用给出的代码进行发送邮
- 一:input()函数的输入机制我们编写的大部分程序,都需要读取输入并对其进行处理,而基本的输入操作是从键盘键入数据。Python从键盘键入
- 问题:MySQL某个表自增id溢出导致某业务block背景: tokudb引擎的一个大表tb1,存放业务
- Python 调用JS文件中的函数方法如下1、安装PyExecJS第三方库2、导入库:import execjs3、调用JS文件中的方法Pa
- 本文实例讲述了pymssql数据库操作MSSQL2005的方法。分享给大家供大家参考。具体如下:使用的MSSQL2005,通过pymssql