« Назад
В VFP типы данных можно разделить на 2 категории. Первая категория употребляется как для полей таблиц баз данных, так и при задании значений переменных, констант и свойств объектов приложения, вторая – только для полей таблиц баз данных. Кроме того, имеются еще 2 типа данных, не относящиеся к этим категориям, – это Object и Variant. Типы данных первой категории описаны в табл. 3.2, а второй – в табл. 3.3.
Таблица 3.2
Типы данных VFP
Тип данных
|
Описание
|
Размер
|
Диапазон изменение
|
Blob
|
Двоичные данные произвольной длины. Хранятся, как и memo-данные, в FPT-файле. Кодовая страница не указывается
|
4 байта в таблице
|
Ограничен доступной памятью; размер файла с данными не может быть более 2 ГБ
|
Character
|
Строка символов (произвольный текст); каждый символ занимает 1 байт
|
До 254 символов
|
Любые символы
|
Currency
|
Вещественное число в денежном формате
|
8 байт
|
от –9223372036854477.5807 до 9223372036854477.5807
|
Date
|
Дата по григорианскому календарю. По умолчанию отображается в таблицах в формате MM/DD/YYYY; так, дата 12/31/2004 соответствует 31 декабря 2004 г.
|
8 байт
|
от 01/01/100 до 12/31/9999
|
DateTime
|
Дата и время отображаются по умолчанию в таблицах в формате MM/DD/YYYY hh:mm:ss AM | PM a. m. (ante meridiem, лат.) – до полудня p. m. (post meridiem, лат.) – пополудни
|
8 байт
|
от 01/01/100 до 12/31/9999 плюс время от 00:00:00 до полудня до 11:59:59 пополудни
|
Logical
|
Логическая величина, обозначающая Истина или Ложь
|
1 байт
|
.T. или .F.
|
Numeric
|
Целое или вещественное число
|
8 байт в оперативной памяти и от 1 до 20 байт в таблице базы данных
|
от –.999999999E+19 до .999999999E+20
|
Varbinary
|
Двоичные данные фиксированной длины. Завершающие нулевые байты, дополняющие значение до длины поля, отсутствуют. Кодовая страница не указывается
|
До 255 байт; длина поля до 254 байт
|
Любые символы; 1 байт на одно шестнадцатеричное значение
|
Таблица 3.3
Типы данных VFP, употребляемые только для полей таблиц
Тип поля
|
Описание
|
Размер
|
Диапазон изменение
|
Character (binary)
|
Символьные данные без указания кодовой страницы; каждый символ занимает 1 байт
|
До 254 символов
|
Любые символы
|
Double
|
Вещественное число двойной точности
|
8 байт
|
от ±4.94065645841247E–324 до ±1.79769313486232E308
|
Float
|
То же, что и Numeric; сохранен для совместимости с прежними версиями
|
8 байт в оперативной памяти и от 1 до 20 байт в таблице базы данных
|
от –.999999999E+19 до .999999999E+20
|
General
|
Применяется для хранения ссылок на OLE-объекты, такие, как листы Excel, документы Word, рисунки, созданные иными приложениями и др.
|
4 байта в таблице
|
Ограничен доступной памятью
|
Integer
|
Целое число
|
4 байта
|
от –2147483647 до 2147483646
|
Integer (AutoInc)
|
Целое число с автоматическим увеличением значения на величину шага
|
"
|
"
|
Memo
|
Ссылка на блок данных
|
4 байта в таблице
|
Ограничен доступной памятью
|
Memo (binary)
|
Ссылка на блок данных, представленных без указания кодовой страницы
|
"
|
"
|
Varchar
|
Символьные данные; в отличие типа Character хвостовые пробелы, дополняющие значение до длины поля, отсутствуют
|
До 254 символов; 1 байт на 1 символ
|
Любые символы
|
Varchar (binary)
|
То же, что и Varchar, но данные хранятся без привязки к кодовой странице
|
"
|
"
|
Замечания:
1. Поле, имеющее тип Integer (AutoInc), доступно только для чтения. Следующее значение поля такого типа может быть задано в поле вода Next Value вкладки Fields проектировщика таблицы. Там же в поле ввода Step устанавливается и шаг приращения значения. Программно эти величины регулируются командой ALTER TABLE – SQL.
2. General-поле хранит ссылку на OLE-объект. Размер OLE-данных зависит от способа использования объекта. Если OLE-объект является присоединенным, то хранится только ссылка на данные и приложение, их создающее. Если – внедренным, то таблица содержит копию данных и ссылку на приложение. Размер general-данных ограничен только доступной дисковой памятью.
Variant может содержать величину любого типа (кроме строк фиксированной длины) и NULL-значение. Получив некоторое значение, Variant приобретает тип, который это значение имеет. Этот тип данных используется внешними клиентами VFP.
Тип Object имеют созданные или активизированные во время работы приложения объекты, а также, если объект является контейнером или коллекцией, – компоненты этого объекта. Например, тип Object имеет форма. В свою очередь, она может содержать элементы управления, например, кнопки, которые также имеют тип Object.
|