<bdo id='50ie7'></bdo><ul id='50ie7'></ul>
      <i id='50ie7'><tr id='50ie7'><dt id='50ie7'><q id='50ie7'><span id='50ie7'><b id='50ie7'><form id='50ie7'><ins id='50ie7'></ins><ul id='50ie7'></ul><sub id='50ie7'></sub></form><legend id='50ie7'></legend><bdo id='50ie7'><pre id='50ie7'><center id='50ie7'></center></pre></bdo></b><th id='50ie7'></th></span></q></dt></tr></i><div id='50ie7'><tfoot id='50ie7'></tfoot><dl id='50ie7'><fieldset id='50ie7'></fieldset></dl></div>

    1. <tfoot id='50ie7'></tfoot>

      <legend id='50ie7'><style id='50ie7'><dir id='50ie7'><q id='50ie7'></q></dir></style></legend>

      <small id='50ie7'></small><noframes id='50ie7'>

      PDO 和嵌套获取

      时间:2023-10-04
    2. <legend id='RrLKG'><style id='RrLKG'><dir id='RrLKG'><q id='RrLKG'></q></dir></style></legend>

    3. <small id='RrLKG'></small><noframes id='RrLKG'>

        <i id='RrLKG'><tr id='RrLKG'><dt id='RrLKG'><q id='RrLKG'><span id='RrLKG'><b id='RrLKG'><form id='RrLKG'><ins id='RrLKG'></ins><ul id='RrLKG'></ul><sub id='RrLKG'></sub></form><legend id='RrLKG'></legend><bdo id='RrLKG'><pre id='RrLKG'><center id='RrLKG'></center></pre></bdo></b><th id='RrLKG'></th></span></q></dt></tr></i><div id='RrLKG'><tfoot id='RrLKG'></tfoot><dl id='RrLKG'><fieldset id='RrLKG'></fieldset></dl></div>

              • <bdo id='RrLKG'></bdo><ul id='RrLKG'></ul>
                <tfoot id='RrLKG'></tfoot>
                  <tbody id='RrLKG'></tbody>
                本文介绍了PDO 和嵌套获取的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                问题描述

                假设我有这样的事情:

                $db=new PDO($dsn);
                
                $statement=$db->query('Select * from foo');
                
                while ($result=$statement->fetch())
                {
                    //do something with $result
                }
                

                我如何在 while 循环中放置另一个查询?即使我创建了一个新的 PDOStatement 对象,它似乎也会覆盖最顶层 PDO 语句的游标.我看到的唯一其他解决方案是 a) 一次获取整个外部循环或 b) 打开 2 个不同的数据库连接.这些似乎都不是一个好主意,还有其他解决方案吗?

                How would I put another query inside of that while loop? Even if I make a new PDOStatement object, it seems that that overwrites the cursor for the topmost PDO statement. The only other solution I see is to either a) fetch the entire outer loop at once or b) open 2 different connections to the database. Neither of these seem like a good idea, are there any other solutions?

                推荐答案

                你应该能够在你的 while 循环中执行任何你想要的其他查询,我想说;像这样:

                You should be able to do any other query you want inside your while loop, I'd say ; something like this :

                $db=new PDO($dsn);
                
                $statement=$db->query('Select * from foo');
                
                while ($result=$statement->fetch())
                {
                    $statement2 = $db->query('Select * from bar');
                    while ($result2=$statement2->fetch()) {
                        // use result2
                    }
                }
                

                你试过了吗?它应该工作...

                Did you try that ? It should work...


                尽管如此,如果可以(如果您的数据没问题,我的意思是),使用 JOIN 仅执行一个查询可能会提高性能:1 个查询而不是多个查询通常更快.


                Still, if you can (if it's OK with your data, I mean), using a JOIN to do only one query might be better for performances : 1 query instead of several is generally faster.

                这篇关于PDO 和嵌套获取的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                上一篇:类之间共享的 PDO 交互 下一篇:MySQL 表中的斜线,但使用 PDO 和参数化查询.这是

                相关文章

                最新文章

                <i id='LgG7g'><tr id='LgG7g'><dt id='LgG7g'><q id='LgG7g'><span id='LgG7g'><b id='LgG7g'><form id='LgG7g'><ins id='LgG7g'></ins><ul id='LgG7g'></ul><sub id='LgG7g'></sub></form><legend id='LgG7g'></legend><bdo id='LgG7g'><pre id='LgG7g'><center id='LgG7g'></center></pre></bdo></b><th id='LgG7g'></th></span></q></dt></tr></i><div id='LgG7g'><tfoot id='LgG7g'></tfoot><dl id='LgG7g'><fieldset id='LgG7g'></fieldset></dl></div>
                <legend id='LgG7g'><style id='LgG7g'><dir id='LgG7g'><q id='LgG7g'></q></dir></style></legend>
              • <tfoot id='LgG7g'></tfoot>

                  1. <small id='LgG7g'></small><noframes id='LgG7g'>

                      <bdo id='LgG7g'></bdo><ul id='LgG7g'></ul>