Documentation Home

5.4.21 mysql_fetch_row()

MYSQL_ROW
mysql_fetch_row(MYSQL_RES *result)

描述

mysql_fetch_row()检索结果集的下一行:

行中值的数量由 给出 mysql_num_fields(result)。如果 row保存对 的调用的返回值 mysql_fetch_row(),则指向这些值的指针的访问方式与row[0]对 的访问方式相同row[mysql_num_fields(result)-1]NULL行中的值由 NULL指针指示。

行中字段值的长度可以通过调用mysql_fetch_lengths(). 空字段和包含NULL 两者的字段的长度为 0;您可以通过检查字段值的指针来区分它们。如果指针是 NULL,则字段是NULL;否则,该字段为空。

返回值

下一行的MYSQL_ROW结构,或 NULL. 返回的含义 NULL取决于之前调用的函数 mysql_fetch_row()

错误

调用之间不会重置错误 mysql_fetch_row()

例子

MYSQL_ROW row;
unsigned int num_fields;
unsigned int i;

num_fields = mysql_num_fields(result);
while ((row = mysql_fetch_row(result)))
{
   unsigned long *lengths;
   lengths = mysql_fetch_lengths(result);
   for(i = 0; i < num_fields; i++)
   {
       printf("[%.*s] ", (int) lengths[i],
              row[i] ? row[i] : "NULL");
   }
   printf("\n");
}