(mysql.info.gz) mysql_fetch_lengths
Info Catalog
(mysql.info.gz) mysql_fetch_field_direct
(mysql.info.gz) C API functions
(mysql.info.gz) mysql_fetch_row
22.2.3.18 `mysql_fetch_lengths()'
.................................
`unsigned long *mysql_fetch_lengths(MYSQL_RES *result)'
Description
...........
Returns the lengths of the columns of the current row within a result
set. If you plan to copy field values, this length information is also
useful for optimization, because you can avoid calling `strlen()'. In
addition, if the result set contains binary data, you *must* use this
function to determine the size of the data, because `strlen()' returns
incorrect results for any field containing null characters.
The length for empty columns and for columns containing `NULL' values is
zero. To see how to distinguish these two cases, see the description
for `mysql_fetch_row()'.
Return Values
.............
An array of unsigned long integers representing the size of each column
(not including any terminating null characters). `NULL' if an error
occurred.
Errors
......
`mysql_fetch_lengths()' is valid only for the current row of the result
set. It returns `NULL' if you call it before calling
`mysql_fetch_row()' or after retrieving all rows in the result.
Example
.......
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]);
}
}
Info Catalog
(mysql.info.gz) mysql_fetch_field_direct
(mysql.info.gz) C API functions
(mysql.info.gz) mysql_fetch_row
automatically generated byinfo2html