Настройка
свойств полей в запросе и свойств самого запроса
По умолчанию
поля в запросе наследуют все свойства, которые определены для поля соответствующей
таблицы. Однако можно изменить значение этих свойств, и эти изменения будут
влиять только на поля в запросе и не будут влиять на поля в исходной таблице.
К вычисляемому
полю в запросе применимы только свойства, заданные в запросе, т. к. данные,
отображаемые в вычисляемом поле, не хранятся в исходной таблице. Например, если
значение в поле вычисляется путем перемножения чисел, которые не являются целыми,
следует установить свойство
Формат
(format) для этого поля. Можно также,
вместо того, чтобы устанавливать свойство
Формат,
применить функцию format
(<имя поля>, <формат>) или подходящую функцию преобразования типов
данных, чтобы получить отображение данных в столбце в требуемом формате.
Существует
несколько способов вывода на экран диалогового окна, содержащего свойства запроса
или свойства поля в запросе. Сначала нужно щелкнуть левой кнопкой мыши в нужном
столбце или на свободном поле в верхней панели запроса (для вывода свойств самого
запроса), затем нажать кнопку
Свойства
(Properties) на панели инструментов
или выполнить команду
Вид, Свойства
(View, Properties). Появится диалоговое
окно, содержащее соответствующий список свойств. Кроме того, можно щелкнуть
правой кнопкой мыши в столбце бланка запроса и выбрать в контекстном меню команду
Свойства
(Properties). Самый быстрый способ вывода окна свойств запроса
— это дважды щелкнуть левой кнопкой мыши по свободной области верхней части
окна запроса.
В окне свойств
поля можно задать значения четырех свойств:
-
свойство
Описание
(Description) позволяет задать текст, который выводится в строке состояния,
когда курсор помещается в это поле в результирующем множестве запроса;
-
свойство
Формат поля
(format) позволяет задать формат отображения данных в результирующем множестве
запроса;
-
свойство
Маска ввода
(Input Mask) позволяет указать формат для ввода данных, если результирующее
множество запроса является обновляемым. Для создания маски ввода, соответствующей
типу данных поля, можно нажать кнопку Построителя справа от поля свойства,
чтобы запустить Мастер по созданию масок ввода;
-
свойство
Подпись
(Caption) позволяет изменить заголовок столбца результирующего множества
запроса. Это свойство мы уже рассматривали
в разд. "Создание запроса
с помощью Конструктора" гл. 4.
Каждое из
перечисленных свойств соответствует соглашениям о свойствах полей таблиц. Присваивание
значения свойству
Подпись
(Caption) эквивалентно указанию префикса в
строке
Поле
(Field) в бланке запроса для этого поля. Значение свойства
Маска ввода
(Input Mask) необязательно соответствует значению свойства
Формат поля
(format). Например, поле с типом данных
Дата/время
(Date/Time)
может иметь средний формат даты для вывода, а в маске ввода можно задать короткий
формат.
Диалоговое
окно
Свойства запроса
(Query Properties) представлено на рис. 8.57.
Рис. 8.57.
Диалоговое окно
Свойства запроса
-
Свойство
Описание
(Description) используется, чтобы задать текст, который будет выводиться
в строке состояния при отображении результирующего множества запроса.
-
Свойство
Режим по
умолчанию
(Default View) позволяет указать тот вид, в котором будут представлены
результаты запроса при его открытии: таблицы, сводная таблица, сводная диаграмма.
То есть теперь вы можете открыть запрос прямо в режиме сводной таблицы или
диаграммы.
-
Свойство
Вывод всех
полей
(Output All Fields) позволяет включить в результирующий набор все
поля из всех базовых таблиц запроса. Следует отметить, что при выводе большого
количества полей выполнение запроса происходит медленнее, особенно если в
результирующем множестве содержится большое количество записей.
-
Свойство
Набор значений
(Top Values) позволяет указать, какое количество строк из результирующего
набора нужно отобразить на экране. По умолчанию это свойство имеет значение
Все
(АН), однако, если запрос содержит большое количество записей,
чтобы ускорить вывод, можно указать число, которое задает либо количество
записей, либо процент записей. В этом случае Access будет выводить информацию
на экран сразу, как только найдет заданное количество строк.
-
Свойства
Уникальные
значения
(Unicue Values) и
Уникальные записи
(Unique records) позволяют
не включать в результирующий набор повторяющиеся записи. Эти свойства мы рассмотрим
подробнее
в разд. "Зарезервированные слова DISTINCTROW и DISTINCT'
данной главы (см. также разд. "Изменение данных в результирующем множестве
запроса" гл. 4).
-
Свойство
При запуске
предоставлять права
(Run Permissions) позволяет ограничить доступ к базовым
таблицам других пользователей. Это свойство используется в том случае, если
база данных работает в многопользовательском режиме и защищена на уровне пользователей
(см. разд. "Администрирование баз данных Access, защищенных на уровне
пользователей" гл. 20).
Оно позволяет дать пользователю дополнительные
права по сравнению с теми, что назначены ему при защите базы данных. Для этого
данному свойству должно быть присвоено значение
Владельца
(Owner's).
По умолчанию оно имеет значение
Пользователя
(User's), при этом пользователи
не имеют никаких дополнительных прав.
-
Свойство
Блокировка
записей
(Record Locks) также используется в многопользовательском режиме
и позволяет установить разные типы блокировки. По умолчанию это свойство имеет
значение
Отсутствует
(No Locks). Это означает, что записи не блокируются
в процессе их редактирования пользователем. Если данное свойство имеет значение
Изменяемой записи
(Edited Records), то когда пользователь редактирует
запись, она блокируется и не может быть изменена другим пользователем. Значение
Всех записей
(All Records) позволяет блокировать все записи, отобранные
запросом, до тех пор, пока пользователь не закроет запрос.
(Подробно о
многопользовательском режиме работы и типах блокировок в Access см. разд.
"Организация совместного доступа к данным"гл. 16.)
-
Свойства
База данных-источник
(Source Database) и Строка нодключения
источник
(Source Connect
Str) используются для доступа к внешней базе данных, которая не является присоединенной
к текущей. В этом случае они содержат имя и тип внешней базы данных.
-
Свойство
Время ожидания
ODBC
(ODBC Timeout) указывает число секунд, в течение которых Microsoft
Access будет повторять попытки выполнения запроса к базе данных, подключенной
к текущей базе посредством драйверов ODBC. Если по истечении заданного времени
ответа от сервера базы данных не поступает, выдается сообщение об ошибке.
-
Свойство
Максимальное
число записей
(Max Records) определяет максимальное количество записей,
которое возвращается запросом из внешней базы данных.
-
Свойство
Тип набора
записей
(RecordsetType) позволяет определить тип результирующего набора
записей. Это свойство может иметь три значения:
-
Динамический
набор
(Dynaset) — если запрос базируется на одной таблице или таблицах,
связанных отношением "один-к-одному", то все поля запроса могут
редактироваться, а если таблицы в запросе связаны отношением "один-ко-многим",
то редактироваться данные могут только в таблице на стороне "один";
-
Динамический
набор (несогл.)
(Dynaset (Inconsistent updates)) — все поля запроса
могут редактироваться;
-
Статический набор
(Snapshot) — ни одно поле запроса не может редактироваться.
-
Свойство
Фильтр
(Filter) — позволяет задать фильтр, который можно применить к результирующему
набору запроса. Значением свойства является строковое выражение, которое создается
в соответствии с правилами составления предложения WHERE. Этот фильтр сохраняется
вместе с запросом.
-
Свойство
Порядок
сортировки
(OrderBy) — позволяет задать порядок сортировки записей в результирующем
наборе. Значением этого свойства является строковое выражение, содержащее
имена полей, перечисленные через запятую.
-
Ориентация
(Orientation)
— позволяет выводить поля запроса как в обычном, так и в обратном порядке.
По умолчанию задается тот порядок следования полей, который определен в запрос:
"Слева направо" (Left-to-Right).
Последние
пять свойств позволяют задать свойства подчиненной таблицы, если в запросе отображаются
записи как главной, так и подчиненной таблиц: имя таблицы, связывающие поля
в главной и подчиненной таблицах, высота таблицы и будет ли она по умолчанию
отображаться или же будет скрыта.