23.8.7.17 mysql_fetch_field()
MYSQL_FIELD *mysql_fetch_field(MYSQL_RES
*result)
설명
MYSQL_FIELD
구조로 설정 된 결과 집합의 한 컬럼의 정의를 반환합니다. 이 함수를 반복적으로 호출하여 결과 집합의 모든 열에 대한 정보를 가져옵니다. 이상 남아있는 필드가 없어지면, mysql_fetch_field()
는 NULL
을 반환합니다.
새로운 SELECT
질의를 수행 할 때마다 mysql_fetch_field()
는 리셋되고 첫 번째 필드에 대한 정보를 반환합니다. mysql_fetch_field()
에 의해 반환되는 필드는 mysql_field_seek()
를 호출하여도 영향을받습니다.
mysql_query()
를 호출하여 테이블에 대한 SELECT
를 실행했지만, mysql_store_result()
를 호출하지 않으면 mysql_fetch_field()
를 호출하여 BLOB
필드의 길이를 구하면, MySQL은 디폴트 BLOB의 길이 (8K 바이트 )을 반환합니다. (MySQL은 BLOB
의 최대 길이를 모르기 때문에, 8K 바이트의 크기가 선택됩니다.이 중 구성 가능하게됩니다.) 결과 세트를 취득 후 field->max_length
는 특정 쿼리의이 컬럼의 최대 길이가 저장됩니다.
반환 값
현재 열 MYSQL_FIELD
구조. 열이 남아 있지 않은 경우는 NULL
.
오류
없음.
예
MYSQL_FIELD *field; while((field = mysql_fetch_field(result))) { printf("field name %s\n", field->name); }