php PDO 可以获取两个结果集吗?如果是,1 个结果集和 1 个以上结果集哪个更好?

2024-04-29

如果可能的话,如何获取两个结果集:

$sth=$dbh->prepare("SELECT * FROM tb1 WHERE cond1;
                    SELECT * from tb2 Where cond2");
$sth->execute();
$row=$sth->fetchAll();  print_r ($row);

这是两个完全不同的表(没有共同的字段)。


Yes PDO可以获取两个(或更多)行集,只要您使用的数据库支持它。我认为微软SQL服务器 and MySQL两者都支持此功能,但在撰写本文时SQLite才不是。

你想要的功能是PDOStatement::nextRowset https://www.php.net/manual/en/pdostatement.nextrowset.php

因此,在上面的示例中,您可能会执行类似的操作;

$sth = $dbh->prepare("SELECT * FROM tb1 WHERE cond1;
                      SELECT * FROM tb2 WHERE cond2");
$sth->execute();
$rowset1 = $sth->fetchAll();
$sth->nextRowset();
$rowset2 = $sth->fetchAll();

print_r($rowset1);
print_r($rowset2);

单个存储过程返回多个行集是完全合理的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

php PDO 可以获取两个结果集吗?如果是,1 个结果集和 1 个以上结果集哪个更好? 的相关文章

随机推荐

  • 如何始终显示滚动条?

    如何在 UWP 应用中始终显示滚动条 滚动条总是在几秒钟后消失 我尝试过设置ScrollViewer VerticalScrollBarVisibility Visible 但滚动条仍然消失 我已经看过了Xaml UI 基础示例 https
  • CURL 静态链接未解析的外部符号

    我在 x64 Native Tools 命令提示符 Visual Studio 中使用此命令从源代码构建了 CURL 静态库 nmake f Makefile vc 模式 静态机器 AMD64 我将 lib 文件夹添加到链接器库文件夹 将
  • 从数据框 R 列表中获取列

    我是一个 R 初学者 我被这个问题困扰了 我有一个数据框 并通过使用 split 函数创建了一个数据框列表 例如 dfList lt split mtcars mtcars cyl 现在我想检索特定数据帧的列 例如数据框 1 的第 2 列
  • Java 中的递归回溯解决填字游戏

    我需要在给定初始网格和单词的情况下解决填字游戏 单词可以多次使用或根本不使用 初始网格如下所示 这是一个单词列表示例 pain nice pal id 任务是填充占位符 水平或垂直长度 gt 1 像那样 p pain pal id i c
  • 提交搜索表单后无法使用 Flask 应用程序从 url 检索变量

    我想在用户提交搜索表单后呈现一个新视图 我的制作方式与处理其他视图的方式相同 但不幸的是这次没有发生任何事情 我无法从应用程序路由中检索内容 所以这个问题不是重复的this https stackoverflow com questions
  • 在 F# 中实现返回 Task 的 C# 方法

    我正在 F 中创建一个类型 该类型继承自 C 类 该类公开返回的方法Task
  • css - 溢出允许水平滚动

    我正在尝试这一页 http www4 wittenberg edu admission dev undergrad 我正在尝试让溢出允许水平滚动 我尝试将主体设置为隐藏 并将 真实主体 类设置为自动 这似乎不起作用 你需要用一个包裹你的长内
  • 如何在 UIBarButtonItem 上触发高亮效果

    当您点击UIBarButtonItem in a UIToolbar 有白光效果 是否有可能触发一个事件来显示这种效果 我不想按按钮 只应显示效果 我想向用户展示该按钮后面有新内容 感谢您的帮助 这是 highlight png 我不是在开
  • Golang中的匿名接口实现

    在Go中 有没有办法匿名满足接口 似乎没有 但这是我最好的尝试 In the 操场 http play golang org p 4i 8o087dg package main import fmt type Thing interface
  • 在 strings.xml 中存储十六进制颜色值

    我正在尝试存储hex colorstrings xml 中我的文本的值 因此所有布局文件都将引用该值 以便能够轻松快速更改项目的所有布局文本 但是我在引用它时遇到了麻烦 Using android textColor FFFFFF 在我的
  • 无法签出以连字符 (-) 开头的 git 分支

    我克隆了一个 git 存储库 该存储库有一个远程分支 例如 feature abc 当我打字时git checkout feature abc I get error unknown switch e 知道如何结帐这个分支吗 尝试使用以下语
  • MVC5 输入占位符不起作用

    我的代码是这样的 Html EditorFor model gt model CreatedUser new htmlAttributes new class form control placeholder Your Placeholde
  • 为什么通用存储库被视为反模式? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 在我看来 许多专门的存储库类都具有相似的特征 并且让这些类实现一个概述这些特征的接口 创建一个通用存储库是有意义的 为了说明我的观点 假设我们有
  • 在 Perl 中使用 POSIX ceil() 出现意外结果

    我一生都无法弄清楚为什么以下会产生这样的结果 use POSIX my g 6 65 my t g 4 my r t g my n r g my c ceil n print c n n 我知道印记太棒了 抱歉 我已经为我的应用程序解决了这
  • 如何在Android中打开设备管理员设置?

    我想去Security gt Device administrators然而 在我的设置中 我只能弄清楚如何打开Security gt Intent dialogIntent new Intent android provider Sett
  • Eclipse 的 Visual Studio Ctrl+Tab 和 Ctrl+Shift+Tab 等效项

    In Visual Studio I always use Ctrl Tab and Ctrl Shift Tab to navigate between documents I see that Eclipse has Ctrl F6 t
  • 使用 Gmail SMTP 发送电子邮件 - Meteorjs

    您好 我正在尝试设置我的 Gmail 帐户来为我的 Meteor 应用程序发送电子邮件 到目前为止还不是很容易 服务器 js Meteor startup function smtp username xxxxx eg email prot
  • 将集合传递给 EditorFor() 时,它会为输入元素生成无效名称

    我有一个 BookCreateModel 其中包含书籍的平面信息 例如标题 出版年份等以及书籍作者的集合 复杂类型 public class BookCreateModel public string Title get set publi
  • Hive 中字符串数据类型是否有最大大小?

    谷歌了很多 但没有在任何地方找到它 或者这是否意味着只要允许集群 Hive 就可以支持任意大字符串数据类型 如果是这样 我在哪里可以找到我的集群可以支持的最大字符串数据类型大小 提前致谢 Hive 列表的当前文档STRING作为有效的数据类
  • php PDO 可以获取两个结果集吗?如果是,1 个结果集和 1 个以上结果集哪个更好?

    如果可能的话 如何获取两个结果集 sth dbh gt prepare SELECT FROM tb1 WHERE cond1 SELECT from tb2 Where cond2 sth gt execute row sth gt fe