Справочное руководство по MySQL версии 4.1.1-alpha



ассенизационная машина |

8.4.1 Типы данных C API - часть 2


char * def

Значение по умолчанию этого поля, заданное строкой с нулевым символом в конце. Задается только при использовании функции mysql_list_fields().

enum enum_field_types type

Тип данного поля. Величина type может быть одной из следующих:

Тип величины Описание типа

FIELD_TYPE_TINY Поле TINYINT

FIELD_TYPE_SHORT Поле SMALLINT

FIELD_TYPE_LONG Поле INTEGER

FIELD_TYPE_INT24 Поле MEDIUMINT

FIELD_TYPE_LONGLONG Поле BIGINT

FIELD_TYPE_DECIMAL Поле DECIMAL или NUMERIC

FIELD_TYPE_FLOAT Поле FLOAT

FIELD_TYPE_DOUBLE Поле DOUBLE или REAL

FIELD_TYPE_TIMESTAMP Поле TIMESTAMP

FIELD_TYPE_DATE Поле DATE

FIELD_TYPE_TIME Поле TIME

FIELD_TYPE_DATETIME Поле DATETIME

FIELD_TYPE_YEAR Поле YEAR

FIELD_TYPE_STRING Строка поля (CHAR или VARCHAR)

FIELD_TYPE_BLOB BLOB или TEXT поле (используется max_length для определения максимальной длинны)

FIELD_TYPE_SET Поле типа SET

FIELD_TYPE_ENUM Поле типа ENUM

FIELD_TYPE_NULL Поле типа NULL

FIELD_TYPE_CHAR Не рекомендуется; лучше использовать FIELD_TYPE_TINY

Можно использовать макрос IS_NUM() для проверки, является ли тип поля числовым. В макросе IS_NUM() следует указать величину type и, если поле имеет числовой тип, будет возвращено значение TRUE:

if (IS_NUM(field->type)) printf("Field is numeric\n");

unsigned int length

Размер данного поля в том виде, в каком он указан в определении таблицы.

unsigned int max_length

Максимальный размер данного поля в результирующем наборе данных (длина самой большой величины поля для строк в текущем результирующем наборе данных). При использовании mysql_store_result() или mysql_list_fields() данная переменная содержит максимальную длину для данного поля. При использовании mysql_use_result() значение этой переменной равно нулю.

unsigned int flags

Различные двоичные флаги для данного поля. Величина flags может иметь ноль или больше двоичных значений следующего набора флагов:

Значение флага описание флага

NOT_NULL_FLAG Поле не может содержать значение NULL




Содержание  Назад  Вперед