mysql_eof

應使用mysql_errno()或mysql_error()取而代之。mysql_eof()確定是否已讀取了結果集的最後1行。

頭檔案

#include<mysql.h>

函式原型

my_bool mysql_eof(MYSQL_RES *result)

說明

該函式已過時。

如果通過成功調用mysql_store_result()獲得了結果集,客戶端將在1次操作中收到整個結果集。在該情況下,從mysql_fetch_row()返回的NULL總表示已到達結果集末尾,而且沒必要調用mysql_eof()。與mysql_store_result()一起使用時,mysql_eof()總返回“真”。

另一方面,如果你使用mysql_use_result()來初始化結果集檢索,當重複調用mysql_fetch_row()時,將逐個地從伺服器獲取結果集的行。由於在該過程中,可能出現連線上的錯誤,從mysql_fetch_row()返回的NULL值不一定表示已正常地抵達結果集末尾。在該情況下,可以使用mysql_eof()來判定出現了什麼情況。如果抵達結果集末尾,mysql_eof()返回非0值,如果出現錯誤,返回0。

從歷史的角度上看,mysql_eof()在日期上早於標準的MySQL錯誤函式mysql_errno()和mysql_error()。由於這類錯誤函式提供了相同的信息,它們優先於已過時的mysql_eof()。事實上,它們提供了更多信息,這是因為,mysql_eof()僅返回布爾值,錯誤函式能夠在出現錯誤時指明錯誤的原因。如果未出現錯誤,返回0。如果抵達結果集的末尾,返回非0值。

相關詞條

熱門詞條

聯絡我們