返回结果集的当前行的每一列的数据长度。尤其是当结果包含二进制数据,必须使用mysql_fetch_lengths()来获得数据的长度,只对当前行有效,It returns NULL
if you call it before calling mysql_fetch_row()
or after retrieving all rows in the result.
MYSQL_ROW row;
unsigned long *lengths;
unsigned int num_fields;
unsigned int i;
row = mysql_fetch_row(result);
if (row)
{
num_fields = mysql_num_fields(result);
lengths = mysql_fetch_lengths(result);
for(i = 0; i < num_fields; i++)
{
printf("Column %u is %lu bytes in length.\n",
i, lengths[i]);
}
}