Типы и виды полей
Функциональное назначение поля определяется свойством FieldKind. В общем случае его назначение определяется автоматически на этапе создания поля.
Вид поля можно изменить в процессе работы приложения. Если новый тип
данных поля не о ям со значением поля, то будет выведено сообщение
об ошибке.
Значение свойства FieldKind относится к перечислимому типу. Соответственно, существует ограниченное количество значений этого свойства:
- fkData - ноле данных, имеющее то же тип, что и поле базы данных;
- ftcCalculated — вычисляемое поле;
- fkLookup — тюле синхронного просмотра;
- fklfiternalCalc - внутреннее вычисляемое поле;
- fkAggregate — агрегатное поле.
Тип данных однозначно связан с конкретным полем таблицы базы данных. Без этого поля само понятие типа данных не имеет практического смысла. В Delphi свойства абстрактного поля инкапсулирует класс TField, который не имеет заранее определенного типа данных. Уже от этого класса порождено целое семейство классов для типизированных полей, каждый из которых умеет обращаться со своим типом данных.
Тип данных поля содержится в свойстве DataType. На основе приведенных типов полей и класса TField порождаются объекты полей определенного типа. Список этих классов приведен в таблице 2.2.
Таблица 2.2. Классы полей
Класс |
Описание поля
|
TADTField |
Поле абстрактного типа данных. Данное поле может
содержать массивы полей, наборы данных и любые иные
типы данных
|
TAggregateField |
Агрегатное поле |
TArrayField |
Поле содержит массив |
TDateField |
Поле даты |
TDateTimeField |
Поле даты и времени |
TSmalllntField |
Целочисленное поле. Под хранение данных отводится по два байта |
TFloatField |
Поле для хранения вещественных чисел |
TSQLTimeStampField |
Поле даты и времени набора DBExpress |
TAutoIncFicld |
Автоинкрементное поле |
TFMTBCDField |
Форматированное двоично-десятичное поле |
TStringField |
Строковое поле |
TBCDField |
Двоично-десятичное поле |
TGraphicField |
Графическое поле |
TTimeField |
Поле времени |
TBinaryField |
Двоичное поле |
TGuidField |
Поле, хранящее уникальный идентификатор GUID |
TVarBytesField |
Байтовое поле переменной длины |
TBlobField |
ВЮВ-поле |
TIDispatchField |
Поле, хранящее указатель на интерфейс диспетчеризации |
TVariantField |
Вариантное поле |
TBooleanField |
Логическое поле |
TIntegerField |
Поле для хранения целочисленных данных длиной 32 бита |
TWideStringField |
Большое строковое поле |
TBytesField |
Байтовое поле фиксированной длины |
Tinterface Field |
Поле, хранящее указатель на интерфейс |
TWordFicld |
Поле для 16-разрядных целочисленных значений без знака |
TCurrencyField |
Поле для хранения информации в виде денежных сумм |
TLargeintField |
Поле для хранения целочисленных данных длиной 64 бита |
TDataSetField |
Поле, содержащее вложенный набор данных |
TMemoField |
Memo-поле |
Delphi поддерживает большое количество полей. Есть поля для работы с СОМ, специальные типы данных для работы с объектно-ориентированными БД, что позволяет разработчику проявлять потрясающую гибкость в вопросах планирования собственной работы.
<< Назад В начало Далее >> |