23.8.7.42 mysql_list_fields()
MYSQL_RES *mysql_list_fields(MYSQL *mysql, const char
*table, const char *wild)
설명
wild 매개 변수에 의해 지정된 간단한 정규식에 일치하는 지정된 테이블의 컬럼에 대한 정보를 메타 데이터로 제공하는 빈 결과 집합을 반환합니다. wild 에는 와일드 카드 문자 ' % '또는' _ '를 포함 할 수 또는 모든 필드에 일치하는 NULL 포인터에 있습니다. mysql_list_fields() 의 호출은 쿼리 SHOW COLUMNS FROM 의 실행과 비슷합니다. tbl_name [LIKE wild ]
mysql_list_fields() 대신 SHOW COLUMNS FROM 을 사용하는 것이 좋습니다. tbl_name
mysql_free_result() 에 의해 결과 집합을 해제해야합니다.
반환 값
성공한 경우 MYSQL_RES 결과 세트. 오류가 발생한 경우 NULL .
오류
CR_COMMANDS_OUT_OF_SYNC명령이 잘못된 순서로 실행되었습니다.
CR_SERVER_GONE_ERRORMySQL 서버가 존재하지 않습니다.
CR_SERVER_LOST서버에 대한 연결이 쿼리 중에 손실되었습니다.
CR_UNKNOWN_ERROR알 수없는 오류가 발생했습니다.
Example
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);