Набор данных Table
Набор данных Table представлен в Delphi компонентом Table. Этот набор данных в каждый момент времени может быть связан только с одной таблицей базы данных.
Компонент Table рекомендуется применять при работе с локальными базами данных, такими как Paradox или dBase.
Рассмотрим основные свойства набора данных Table. В таблице 3.4. приведены все свойства, которые отображаются в окне инспектора объектов.
Таблица 3.4. Свойства компонента Table
Название | Тип свойства | Описание свойства |
Active | Boolean | Определяет, является ли набор данных открытым. Если свойство имеет значение False, то набор данных закрыт и с данными ничего не может сделать ни пользователь, ни программа. Если данное свойство установлено в True, то с данными можно осуществлять произвольные действия (изменять, добавлять, удалять и т. д.) |
AutoCalcFields | Boolean | Определяет, как будет осуществляться работа с автомати- чески вычисляемыми полями. Если свойство установлено в True, то значения таких полей будут автоматически вычис- ляться в случае открытия набора данных, перевода набора данных в режим редактирования (dsEdit), передачи фокуса с одного визуального компонента на другой или из одной колонки визуального компонента в другую |
AutoRefresh | Boolean | Определяет порядок обновления на сервере базы данных визуальных компонентов для отображаемых полей. Если значение свойства — False (по умолчанию), то автоматиче- ское обновление будет отсутствовать. Для обновления данных в этом случае программист должен предусмотреть вызов процедуры Refresh. Если значение свойства — True, то обновления будут осуществляться автоматически |
CachedUpdates | Boolean | Установка значения свойства в True позволяет кэшировать изменения, сделанные в базе данных. При этом данные хранятся в оперативной памяти, и для их переноса в базу данных применяется метод ApplyUpdates. Для отмены сде- ланных изменений вызывается метод CancelUpdates. Для очистки содержимого кэша используется метод CommitUpdates |
Constraints | TCheckConstraints | Определяет ограничения целостности на уровне записи, накладываемые на значения отдельных полей набора данных |
DatabaseName | String | Определяет имя базы данных, связанной с набором данных |
DefaultIndex | Boolean | Определяет, будут ли данные в таблице отсортированы по полю первичного ключа или главного индекса. Значение свойства по умолчанию — True |
Exclusive | Boolean | Если значение свойства — True, то другие приложения не смогут обратиться к уже открытому набору данных (приме- нимо только к таблицам Paradox и dBase). Необходимо обя- зательно закрывать открытую таблицу при смене значения данного свойства |
FieldDefs | TFieldDefs | Задает набор полей, которые определяют набор данных. Позволяет программно, во время выполнения приложения создавать таблицы и их поля |
Filter | String | Содержит текст текущего фильтра для набора данных. В визуальных компонентах будут отображаться только те данные, которые соответствуют условиям данного фильтра |
Filtered | Boolean | Определяет, будет ли учитываться значение свойства Filter при отображении данных в визуальных компонентах. В случае True данные будут фильтроваться в соответствии со свой- ством Filter, иначе — фильтр игнорируется |
FilterOptions | TFilterOptions | Содержит два подчиненных свойства, которые определяют, является ли фильтр чувствительным к регистру букв и разрешается ли в фильтре использование символа «*» в качестве указателя на любое количество любых символов. По умолчанию эти два свойства имеют значения False |
IndexDefs | TIndexDefs | Содержит информацию об индексах таблицы |
IndexFieldNames | String | Содержит список столбцов таблицы, которые выбраны в качестве индексных |
IndexFiles | TStrings | Содержит название одного или нескольких индексных файлов для таблицы формата dBase |
IndexName | String | Определяет альтернативные индексы для таблицы |
MasterFields | String | Определяет одно или несколько полей главной таблицы (master table) для установления связи с соответствующими полями подчиненной таблицы, то есть для установления связи «master—detail» |
MasterSource | TDataSource | Задает имя компонента источника данных, свойство DataSet которого определяет набор данных, используемый в качестве главной (master) таблицы при установлении связи «master— detail» |
Name | TComponentName | Определяет имя компонента набора данных. По умолчанию присваиваются имена Table1, Table2, ј, TableN |
ObjectView | Boolean | Указывает, как хранятся объекты полей в свойстве Fields: иерархически или последовательно (дочерние поля размещены после родительских) |
ReadOnly | Boolean | Фиксирует, можно ли изменять данные в таблице, или они доступны только для чтения. Если значение свойства — False (по умолчанию), то изменение данных разрешено, иначе — данные из таблицы доступны только для чтения |
SessionName | String | Определяет имя компонента Session, связанного с данной таблицей |
StoreDefs | Boolean | Указывает, где сохраняются определения полей и индексов. Если значение данного свойства — True, то определения полей и индексов будут сохраняться в модуле данных или в форме. В случае False (по умолчанию), информация сохраня- ется в файлах базы данных |
TableName | TFileName | Определяет имя файла таблицы базы данных, которую инкапсулирует объект. Условием установки этого свойства является присвоение значения False свойству Active |
TableType | TTableType | Определяет структуру используемой таблицы базы данных и может принимать следующие значения: ttDefault — тип таблицы определяется по ее расширению (*.db — Paradox, *.dbf — dBase, *.txt — ASCII); ttParadox — таблица Paradox; ttDBase — таблица dBase; ttFoxPro — таблица FoxPro; ttASCII — таблица в текстовом формате с данными, разде- ленными запятыми |
Tag | LongInt | Не имеет специального назначения. Применяется для хранения целого числа, связанного с компонентом. Может применяться по усмотрению программиста |
UpdateMode | TUpdateMode | Определяет критерии поиска обновляемой записи базы данных SQL в BDE (какие поля учитываются). Может принимать одно из трех значений: UpWhereAll — все поля; UpWhereChanged — только ключевые поля и поля, значения которых были изме- нены; UpWhereKeyOnly — только ключевые поля |
UpdateObject | TDataSetUpdateObject | Определяет объект типа TDataSetUpdateObject, который используется для обновления записи |