[英]How to get mysql_num_rows with PDO?
如何輕松獲得通過“ 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。
對於DELETE
, INSERT
或UPDATE
語句,請使用PDOStatement :: rowCount() 。
對於SELECT
語句,請while( $sth->fetch() )
循環中手動計數行while( $sth->fetch() )
例如,如果計數超過某個閾值,則可以break
循環),或者執行單獨的查詢以獲取數據庫返回行數(例如, SELECT COUNT(*) FROM table WHERE column = ?
)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.