如果用下面语句'SELECT count(*) from BD_Reve.user_day' 即返回一个值或者一列。是可行的。而当
将SQL 改为,句'SELECT count(*),count(*) from BD_Reve.user_day' 时就会报错。
错误原因:pdo的查询只支持单列。但从php文档上看是支持多列返回到数组的。有谁遇到过这个问题 ?try {
 
   $dbh = new PDO($beidou_connStr,$beidou_user,$beidou_pass);
   foreach ($dbh->query('SELECT count(*) from BD_Reve.user_day') as $row) {
      print_r($row);
   }
   $dbh = null;
} catch (PDOException $e) {
   print "Error!: " . $e->getMessage() . "<br/>";
   die();
}

解决方案 »

  1.   

    SQL语句改成下面这样:
    <?php
    try {
    $dbh = new PDO($beidou_connStr,$beidou_user,$beidou_pass);
    foreach ($dbh->query('SELECT count(*) as count1, count(*) as count2 from BD_Reve.user_day') as $row) {
    print_r($row);
    }
    $dbh = null;
    } catch (PDOException $e) {
    print "Error!: " . $e->getMessage() . "<br/>";
    die();
    }
    ?>
      

  2.   

    SELECT count(*),count(*)
    有什么意义????
      

  3.   

    二楼正解,pdo可以返回多列。或则你sql改为'select a1,a1,a3 from table where.',可以返回多列..