enum net_async_status
mysql_fetch_row_nonblocking(MYSQL_RES *result,
MYSQL_ROW *row)
mysql_fetch_row_nonblocking()
是一个异步函数。它是
mysql_fetch_row()
同步函数的对应物,供需要与服务器进行异步通信的应用程序使用。有关编写异步 C API 应用程序的一般信息,请参阅第 7 章,C API 异步接口。
mysql_fetch_row_nonblocking()
与 类似地使用
mysql_fetch_row()。有关后者的详细信息,请参阅第 5.4.22 节,“mysql_fetch_row()”。这两个函数的区别如下:
-
mysql_fetch_row()返回MYSQL_ROW包含下一行的值,或NULL。返回的含义NULL取决于之前调用的函数mysql_fetch_row():在
mysql_store_result()or 之后使用时mysql_store_result_nonblocking(), 如果没有更多行要检索则返回mysql_fetch_row()。NULL当在 after 之后使用时
mysql_use_result(), 如果没有更多的行要检索或发生错误则mysql_fetch_row()返回。NULL
-
mysql_fetch_row_nonblocking()返回一个enum net_async_status状态指示符并采用第二个row参数,该参数提供指向MYSQL_ROW值的指针。当返回状态为NET_ASYNC_COMPLETE时,row参数是指向MYSQL_ROW包含下一行的值的指针,或NULL。的含义NULL取决于前面调用了哪个函数mysql_fetch_row_nonblocking():在
mysql_store_result()or 之后使用时mysql_store_result_nonblocking(),row参数是NULL是否没有更多行要检索。当在 after 之后使用
mysql_use_result()时,row参数是NULL如果没有更多的行要检索或发生错误。
mysql_fetch_row_nonblocking()
在 MySQL 8.0.16 中添加。
返回一个enum net_async_status值。请参阅
第 7.2 节“C API 异步接口数据结构”中的说明。NET_ASYNC_ERROR返回状态表示错误
。
请参阅第 7 章,C API 异步接口。