Части шаблона разделяются точкой с запятой.
Например, шаблон для ввода телефонного номера выглядит следующим образом:
!\(999\)000-0000;1;_
Резюме
Работа с полями является важным этапом в процессе разработки приложения баз данных. Для этого используются специальные объекты, которые инкапсулируют возможности полей таблицы БД. В Delphi имеется целая иерархия классов, обеспечивающая применение полей самых различных типов. В основе этой иерархии лежит класс тПе1с1
По способу создания объекты полей делятся на статические и динамические.
По функциональным возможностям объекты полей бывают полями данных, вычисляемыми, синхронного просмотра, агрегатными.
Объекты полей играют важную роль в работе наборов данных. С их помощью можно получить доступ к текущим значениям, задать ограничения на вводимые величины и проверить их правильность.
ГЛАВА 14
Механизмы управления данными
Наряду с описываемыми в предыдущих главах свойствами и методами, стандартный набор данных Delphi инкапсулирует ряд дополнительных механизмов, облегчающих управление записями и полями.
К ним относятся такие полезные функции, как быстрое перемещение по записям, поиск нужной записи по значениям полей, дополнительная фильтрация записей набора данных без использования возможностей СУБД и т. д. Большинство этих механизмов применяют в своей работе индексы таблиц БД.
Абстрактные методы, обеспечивающие управление данными, реализованы в базовом классе TDataSet (см. гл. 12). А классы-потомки, в свою очередь, реализуют механизмы управления данными в соответствии с возможностями технолигий доступа к данным (см. часть IV).
Все рассматриваемые в этой главе методы управления данными в полном объеме доступны только в компонентах, инкапсулирующих таблицу БД. Это связано с тем, что компоненты запросов SQL и хранимых процедур не обеспечивают полноценное использование индексов.
В этой главе рассматриваются следующие вопросы:
□ связанные таблицы;
□ методы поиска данных;
□ диапазоны;
О быстрая навигация по набору данных; ГЛ фильтрация записей в наборе данных.
Связанные таблицы
В рамках одного проекта таблицы БД можно связывать отношениями "один-ко-многим" и "многие-ко-многим", при этом отношения обязательно устанавливаются между индексированными полями двух таблиц.
При создании отношений в качестве главной таблицы можно использовать любой компонент, инкапсулирующий набор данных. Для задания подчиненной таблицы можно использовать только табличные компоненты (см. гл. 12).
Отношение "один-ко-многим"
Для установления отношения "один-ко-многим" в наборе данных предназначены два свойства - MasterSource И MasterFields, Которые задаются ДЛЯ подчиненной таблицы. Набор данных главной таблицы не требует никаких дополнительных настроек и заданная связь будет работать только при перемещениях по записям главной таблицы.
Свойство MasterSource определяет компонент TDataSource, который связан с главной таблицей.
Затем при помощи свойства MasterFields необходимо установить отношения между полями главной и подчиненной таблицы. В нем содержится имя индексированного поля, по которому устанавливается связь. Если таких полей несколько, их имена разделяются точкой с запятой. При этом не все поля, входящие в индекс, обязаны участвовать в создании отношения.