zoukankan      html  css  js  c++  java
  • php+mysql非缓冲查询(如何循环大数组)

    另外一种PHP查询模式是非缓冲查询,数据库服务器会一条一条的返回数据,而不是一次全部返回,这样的结果就是PHP程序消耗较少的内存,但却增加了数据库服务器的压力,因为数据库会一直等待PHP来取数据,一直到数据全部取完。

    很显然,缓冲查询模式适用于小数据量查询,而非缓冲查询适应于大数据量查询。

    mysqli

    <?php 
    $mysqli  = new mysqli("localhost", "my_user", "my_password", "world"); 
    $uresult = $mysqli->query("SELECT Name FROM City", MYSQLI_USE_RESULT); 
      
    if ($uresult) { 
       while ($row = $uresult->fetch_assoc()) { 
           echo $row['Name'] . PHP_EOL; 
       } 
    } 
    $uresult->close(); 
    

    pdo_mysql

    <?php 
    $pdo = new PDO("mysql:host=localhost;dbname=world", 'my_user', 'my_pass'); 
    $pdo->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false); 
      
    $uresult = $pdo->query("SELECT Name FROM City"); 
    if ($uresult) { 
       while ($row = $uresult->fetch(PDO::FETCH_ASSOC)) { 
           echo $row['Name'] . PHP_EOL; 
       } 
    } 
    

    mysql

    <?php 
    $conn = mysql_connect("localhost", "my_user", "my_pass"); 
    $db   = mysql_select_db("world"); 
      
    $uresult = mysql_unbuffered_query("SELECT Name FROM City"); 
    if ($uresult) { 
       while ($row = mysql_fetch_assoc($uresult)) { 
           echo $row['Name'] . PHP_EOL; 
       } 
    } 
    

      

  • 相关阅读:
    地铁开发进度1
    人月神话阅读笔记二
    学习进度五
    人月神话阅读笔记一
    WebView的用法:
    图框联动
    阅读笔记《人月神话》一
    5
    4
    3
  • 原文地址:https://www.cnblogs.com/adtuu/p/4850665.html
Copyright © 2011-2022 走看看