【问题标题】:How to get mysql_num_rows with PDO?如何使用 PDO 获取 mysql_num_rows?
【发布时间】:2012-08-23 08:40:58
【问题描述】:

如何轻松获取“SELECT *”SQL 查询返回的行数?

function valid_credentials($db,$name,$pw) {
    try {

    $sth = $db->prepare("SELECT * FROM ib_members WHERE name=:val AND pw=:val2");
    $sth->bindValue(":val",$name);
    $sth->bindValue(":val2",$pw);   
    $sth->execute();


    $numrows = $sth->fetchColumn();

    return $numrows;

    } catch (PDOException $e) {

        return $e->getMessage();

    }
}

返回14,肯定不是返回的行数,而是第一行的ID。

【问题讨论】:

标签: php pdo mysql-num-rows


【解决方案1】:

对于DELETEINSERTUPDATE 语句,请使用PDOStatement::rowCount()

对于SELECT 语句,在while( $sth->fetch() ) 循环中手动计算行数(例如,如果计数超过某个阈值,您可以将break 退出循环),或者执行单独的查询以获取数据库返回行数(例如,SELECT COUNT(*) FROM table WHERE column = ?)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-05-07
    • 2012-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-19
    • 2014-01-20
    • 1970-01-01
    相关资源
    最近更新 更多