
- •Общие принципы создания приложений
- •Архитектура Microsoft Access
- •Создание базы данных
- •Создание новой пустой таблицы
- •Типы данных
- •Свойства поля
- •Сохранение таблицы
- •Ввод данных в таблицу
- •Общие сведения о формах
- •Создание формы для ввода данных
- •Панель элементов
- •Отношения между таблицами
- •Извлечение информации при помощи запросов
- •Выбор данных из одной таблицы
- •Включение полей в запрос
- •Ввод условий отбора
- •Результат применения к двум условиям логических операций or
- •Вычисляемые поля
- •Итоговые запросы
- •Основные сведения об отчетах
- •Задания для самостоятельной работы Требования к оформлению
Результат применения к двум условиям логических операций or
Условия отбора Условия отбора |
Истина |
Ложь |
Истина |
Истина (Отбирается) |
Истина (Отбирается) |
Ложь |
Истина (Отбирается) |
Ложь (Отвергается) |
Поясним сказанное на примере еще одного простого запроса, выполненного на основе таблицы «Сведения о сотрудниках». На рис. 24 представлена информация о сотрудниках в режиме таблицы. На рис. 25 и 26 приведены запрос в режиме конструктора и результат его выполнения, соответственно. Мы видим, что по запросу: «Выбрать всех сотрудников, начальные буквы фамилий которых находятся между "Б" и "К", ИЛИ код должности больше "05"» выбрано 12 записей. Если немного изменить этот запрос – вместо ИЛИ поставить И – как показано на рис. 27, то будут выбраны всего две записи, представленные на рис. 28.
Рис. 24. Содержимое таблицы «Сведения о сотрудниках»
Рис. 25. Запрос на выборку с использованием ИЛИ в режиме конструктора
Рис. 26. Результат выполнения запроса на выборку с использованием ИЛИ
Рис. 27. Запрос на выборку с использованием И в режиме конструктора
Рис. 28. Результат выполнения запроса на выборку с использованием И
Вычисляемые поля
Над любыми полями таблицы можно выполнять некоторые действия. Результат вычисляемого выражения можно поместить в новое поле набора записей, при этом можно использовать любые из встроенных функций Access. Кроме того, поля запроса могут содержать данные, получаемые с помощью арифметических операций над полями таблицы.
Вычисляемое поле может содержать вызовы встроенных функций Access и операторы, перечисленные в таблице 12.
Таблица 12
Операторы, применяемые в арифметических выражениях
Оператор |
Выполняемое действие |
+ |
складывает два арифметических выражения |
– |
вычитает из первого арифметического выражения второе |
* |
перемножает два арифметических выражения |
/ |
делит первое арифметическое выражение на второе |
\ |
округляет два арифметических выражения до целых значений и делит первое на второе. Результат округляется до целого |
^ |
возводит первое арифметическое выражение в степень, задаваемую вторым арифметическим выражением |
MOD |
округляет оба арифметических выражения до целых значений, делит первое на второе и возвращает остаток |
& |
создает текстовую строку как результат присоединения второй строки к концу первой. Если один из операндов является числом, то оно автоматически преобразуется в строку символов |
Вычисляемое поле начинается либо со знака равенства, либо с имени, за которым следует двоеточие, после которого записывается выражение.
Если в выражении используются имена других полей, то они заключаются в квадратные скобки. Например, Стоимость:[Цена] * [Количество].
В таблице 13 перечислены статистические функции, которые могут использоваться в вычисляемых полях.
Таблица 13
Статистические функции Access
Функция |
Результат (возвращаемое значение) |
Тип поля |
Sum |
Сумма значений поля внутри каждой группы |
Числовой, Дата/время, Денежный и Счетчик |
Avg |
Среднее от значений поля внутри каждой группы |
Числовой, Дата/время, Денежный и Счетчик |
Min |
Наименьшее значение поля внутри каждой группы |
Текстовый, Числовой, Дата/время, Денежный и Счетчик |
Max
|
Наибольшее значение поля внутри каждой группы |
Текстовый, Числовой, Дата/время, Денежный и Счетчик |
Count |
Число значений поля без учета пустых (Null) значений внутри каждой группы |
Текстовый, Числовой, Дата/время, Денежный, Счетчик, Логический и Поле объекта OLE |
StDev |
Среднеквадратичное отклонение от среднего значения поля |
Числовой, Дата/время, Денежный и Счетчик |
Var |
Дисперсия значений поля |
Числовой, Дата/время, Денежный и Счетчик |
First |
Первое значение поля в группе |
Числовой, Дата/время, Денежный и Счетчик |
Last |
Последнее значение поля в группе |
Числовой, Дата/время, Денежный и Счетчик |
Из всего многообразия встроенных функций Access рассмотрим наиболее часто используемые функции: CCur(), IIf(), IsNull().
Функция CCur() относится к функциям преобразования типа. Данные функции используются, когда требуется выполнить «недопустимые» действия над полями определенного типа, например, сложить значения двух полей, содержащих цифры в текстовом формате. Функции преобразования типа данных применяются, чтобы показать, что результат некоторой операции должен выражаться в определенном типе данных, а не в типе данных, используемом по умолчанию. Функция CCur() используется для принудительного выполнения арифметических действий с денежными единицами в тех случаях, когда обычно используются действия с числами с обычной точностью, двойной точностью или с целыми числами. Это связано с особенностями округления чисел.
Функция IIf() напоминает логический оператор IF. Ее синтаксис
IIf(term; termT; termF),
где term – выражение, которое требуется оценить;
termT – значение или выражение, которое будет возвращено, если term будет оценено как Истина;
termF – значение или выражение, которое будет возвращено, если term будет оценено как Ложь.
Функция IsNull() возвращает значение Истина, если выражение, записанное в скобках, содержит недопустимые данные Null, и Ложь – в противном случае. Ее синтаксис
IsNull(term),
где term – значение типа Variant, содержащее числовое или строковое выражение.