DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

(mysql.info) mysql-fetch-lengths

Info Catalog (mysql.info) mysql-fetch-fields (mysql.info) c-api-functions (mysql.info) mysql-fetch-row
 
 22.2.3.20 `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) mysql-fetch-fields (mysql.info) c-api-functions (mysql.info) mysql-fetch-row
automatically generated byinfo2html