MYSQL_RES *mysql_list_fields(MYSQL *mysql, const char
*table, const char *wild)
Returns an empty result set for which the metadata provides
information about the columns in the given table that match the
simple regular expression specified by the
wild parameter. wild may
contain the wildcard characters % or
_, or may be a NULL
pointer to match all fields. Calling
mysql_list_fields() is similar
to executing the query SHOW COLUMNS FROM
.
tbl_name [LIKE
wild]
It is preferable to use SHOW COLUMNS FROM
instead of
tbl_namemysql_list_fields().
You must free the result set with
mysql_free_result().
A MYSQL_RES result set for success.
NULL if an error occurred.
Commands were executed in an improper order.
The MySQL server has gone away.
The connection to the server was lost during the query.
An unknown error occurred.
int i;
MYSQL_RES *tbl_cols = mysql_list_fields(mysql, "mytbl", "f%");
unsigned int field_cnt = mysql_num_fields(tbl_cols);
printf("Number of columns: %d\n", field_cnt);
for (i=0; i < field_cnt; ++i)
{
/* col describes i-th column of the table */
MYSQL_FIELD *col = mysql_fetch_field_direct(tbl_cols, i);
printf ("Column %d: %s\n", i, col->name);
}
mysql_free_result(tbl_cols);