簡體   English   中英

執行SELECT SQL時,mysql_num_rows和mysql_affected_rows返回相同的結果

[英]mysql_num_rows and mysql_affected_rows return the same result when executing SELECT SQL

我的測試代碼:

    $connection = mysql_connect('localhost', 'root', '') or die(mysql_error());

    mysql_select_db("chaoge", $connection);

    mysql_query("SET NAMES UTF8", $connection);

    $rs = mysql_query("SELECT * FROM babel_node WHERE nod_pid = 2101", $connection);

    $nu = mysql_affected_rows();
    echo $nu;

它說mysql_affected_rows與INSERT,UPDATE,REPLACE和DELETE一起使用。

為什么我也可以通過mysql_affected_rows得到正確的結果?

任何幫助和建議都將不勝感激。

我建議你必須使用

MySQLi http://php.net/manual/zh/book.mysqli.php

要么

PDO_MySQL http://php.net/manual/zh/ref.pdo-mysql.php

自PHP 5.5.0中棄用您的方法以來,用於訪問數據庫的更新方法

這是我在互聯網上找到的。

SELECT的mysql_affected_rows()表示找到的行數。 mysql_num_rows()指示實際返回了多少行。 如果您有LIMIT子句或類似內容,則IIRC可能不同。 GROUP BY也可能導致差異。

資源

請參閱底部來源的答案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM