【问题标题】:Why does fetchColumn() return 1 when there are 2 columns?为什么 fetchColumn() 有 2 列时返回 1?
【发布时间】:2017-08-08 12:29:05
【问题描述】:

当数据库中实际上有两列符合这些条件时,为什么fetchColumn() 返回“1”?

如果数据库中有1条记录匹配它会返回false? (我曾经做过$num_of_rows = $stmt->num_rows(),效果很好)

$follower = 1;
$following = 1;

$stmt = $dbCon->prepare(" SELECT login_followers_status "
        . " FROM login_followers "
        . " WHERE login_followers_follower = ? "
        . " AND login_followers_following = ? ");
$stmt->bindParam(1, $follower);
$stmt->bindParam(2, $following);
$stmt->execute();
$row = $stmt->fetch();
$status = $row['login_followers_status'];
$num_of_rows = $stmt->fetchColumn();

echo $num_of_rows;

【问题讨论】:

    标签: php sql pdo prepared-statement


    【解决方案1】:

    你为什么不看说明书?

    public mixed PDOStatement::fetchColumn ([ int $column_number = 0 ] )

    PDOStatement::fetchColumn — 从下一行返回单列 结果集。

    从结果集的下一行返回单列,如果返回 FALSE 没有更多的行了。

    警告如果出现以下情况,则无法从同一行返回另一列 您使用 PDOStatement::fetchColumn() 来检索数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-08-24
      • 2018-01-31
      • 2019-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-23
      相关资源
      最近更新 更多