MySQL- Руководство разработчика



              

Типы данных в DELPHI API - часть 2


/p>

length:longword; Ширина поля, как она определена в описании таблицы. max_length:longword; Максимальная ширина поля для набора результатов (длина самого длинного поля для строк в наборе результатов). Если Вы используете mysql_store_result() или mysql_list_fields(), это содержит максимальную длину поля. Если Вы используете mysql_use_result(), значение этой переменной нулевое. flags:longword; Различные биты задают флажки для поля. Значение flags может иметь ноль или большее количество из следующего набора битов:

Значение Flags Что это значит
NOT_NULL_FLAG Поле не может быть NULL
PRI_KEY_FLAG Поле часть первичного ключа
UNIQUE_KEY_FLAG Поле часть уникального ключа
MULTIPLE_KEY_FLAG Поле часть неуникального ключа
UNSIGNED_FLAG Поле имеет атрибут UNSIGNED
ZEROFILL_FLAG Поле имеет атрибут ZEROFILL
BINARY_FLAG Поле имеет атрибут BINARY
AUTO_INCREMENT_FLAG Поле имеет атрибут AUTO_INCREMENT
ENUM_FLAG Поле имеет тип ENUM
BLOB_FLAG Поле имеет тип BLOB или TEXT
TIMESTAMP_FLAG Поле имеет тип TIMESTAMP
Использование BLOB_FLAG, ENUM_FLAG и TIMESTAMP_FLAG не рекомендуется потому, что они указывают тип поля, а не атрибут типа. Предпочтительно проверить field.typ вместо FIELD_TYPE_BLOB, FIELD_TYPE_ENUM или FIELD_TYPE_TIMESTAMP. Пример ниже иллюстрирует типичное использование flags: if (field.flags & NOT_NULL_FLAG) write("Field can't be null"); Вы можете использовать следующие макрокоманды, чтобы определить булево состояние значения flags:

IS_NOT_NULL(flags) Истина, если это поле определено как NOT NULL
IS_PRI_KEY(flags) Истина, если это поле первичный ключ
IS_BLOB(flags) Истина, если это поле BLOB или TEXT

decimals:longword; Число допустимых десятичных чисел для числовых полей.




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