Как можно сделать вычисления в запросах access
Перейти к содержимому

Как можно сделать вычисления в запросах access

  • автор:

Как можно сделать вычисления в запросах access

Запросы в Access

Запросы в Access являются основным инструментом выборки, обновления и обработки данных в таблицах базы данных. Access в соответствии с концепцией реляционных баз данных для выполнения запросов использует язык структурированных запросов SQL (Structured Query Language). С помощью инструкций языка SQL реализуется любой запрос в Access.

Основным видом запроса является запрос на выборку. Результатом выполнения этого запроса является новая таблица, которая существует до закрытия запроса. Записи формируются путем объединения записей таблиц, на которых построен запрос. Способ объединения записей таблиц указывается при определении их связи в схеме данных или при создании запроса. Условия отбора, сформулированные в запросе, позволяют фильтровать записи, составляющие результат объединения таблиц.

В Access может быть создано несколько видов запроса:

  • запрос на выборку — выбирает данные из одной таблицы или запроса или нескольких взаимосвязанных таблиц и других запросов. Результатом является таблица, которая существует до закрытия запроса. Формирование записей таблицы результата производится в соответствии с заданными условиями отбора и при использовании нескольких таблиц путем объединения их записей;
  • запрос на создание таблицы — выбирает данные из взаимосвязанных таблиц и других запросов, но, в отличие от запроса на выборку, результат сохраняет в новой постоянной таблице;
  • запросы на обновление, добавление, удаление — являются запросами действия, в результате выполнения которых изменяются данные в таблицах.

Запросы в Access в режиме конструктора содержат схему данных, отображающую используемые таблицы, и бланк запроса, в котором конструируется структура таблицы запроса и условия выборки записей (рис. 4.1).

Запросы в Access

С помощью запроса можно выполнить следующие виды обработки данных:

  • включить в таблицу запроса выбранные пользователем поля таблицы;
  • произвести вычисления в каждой из полученных записей;
  • выбрать записи, удовлетворяющие условиям отбора;
  • сформировать на основе объединения записей взаимосвязанных таблиц новую виртуальную таблицу;
  • сгруппировать записи, которые имеют одинаковые значения в одном или нескольких полях, одновременно выполнить над другими полями группы статистические функции и в результат включить одну запись для каждой группы;
  • создать новую таблицу базы данных, используя данные из существующих таблиц;
  • произвести обновление полей в выбранном подмножестве записей;
  • удалить выбранное подмножество записей из таблицы базы данных;
  • добавить выбранное подмножество записей в другую таблицу.

Запросы в Access служат источниками записей для других запросов, форм, отчетов. С помощью запроса можно собрать полные сведения для формирования некоторого документа предметной области из нескольких таблиц, далее использовать его для создания формы — электронного представления этого документа. Если форма или отчет создаются мастером на основе нескольких взаимосвязанных таблиц, то для них в качестве источника записей автоматически формируется запрос.
Для закрепления смотрим видеоурок:

Как можно сделать вычисления в запросах access

MS Access базы, помощь студентам

Вычисляемые поля в запросах Access

Обубликовано: 20.03.2015

Вычисляемые поля в запросах Access

В этой статье речь поговорим про вычисляемые поля в запросах Access. В запросе, как и в таблице, для каждой записи могут производиться вычисления с числовыми, строковыми значениями или значениями дат с использованием данных из одного или нескольких полей. Результат вычисления образует в таблице запроса новое вычисляемое поле. В отличие от вычисляемых полей таблицы, вычисляемые поля запроса в исходных таблицах базы данных новых полей не создают. При каждом выполнении запроса производятся вычисления на основе текущих значений полей.

В выражениях вычисляемых полей помимо имен полей могут использоваться константы и функции. В результате обработки выражения может получаться только одно значение.

Задача 1. В таблице ТОВАР имеются поля ЦЕНА и СТАВКА_НДС, вычислите цену с учетом НДС и сравните ее с полученной в вычисляемом поле таблицы Цена с НДС.

  1. Создайте в режиме конструктора запрос на выборку для таблицы ТОВАР. Перетащите в бланк запроса поля НАИМ_ТОВ, ЦЕНА, СТАВКА_НДС и Цена с НДС (рис. 4.6).
  2. Для подсчета цены с учетом НДС создайте вычисляемое поле, записав в пустой ячейке строки Поле (Field) выражение [ЦЕНА]+[ЦЕНА]*[СТАВКА_НДС].
  3. Для отбора записей со значением выше 5000 в вычисляемом поле в строку Условие отбора (Criteria) введите > 5000
  4. После ввода выражения система по умолчанию формирует имя вычисляемого поля Выражение 1, которое становится заголовком столбца в таблице с результатами выполнения запроса. Это имя вставится перед выражением [ЦЕНА]+[ЦЕНА]*[СТАВКА_НДС]. Для каждого нового вычисляемого поля в запросе номер выражения увеличивается на единицу. Имя вычисляемого поля отделяется от выражения двоеточием. Для изменения имени установите курсор мыши в вычисляемом поле бланка запроса и нажмите правую кнопку мыши. В контекстно-зависимом меню выберите Свойства (Properties) поля и в строку Подпись (Caption) введите новое имя поля ― Цена с НДС1. Теперь в таблице с результатами выполнения запроса в заголовке вычисляемого столбца отобразится это имя. Имя поля может быть исправлено также непосредственно в бланке запроса.
  5. Для отображения результата выполнения запроса щелкните на кнопке Выполнить (Run) в группе Результаты (Results). Вычисляемое поле таблицы и за-проса имеют одинаковые значения.
  6. Измените в одной из записей запроса цену товара. Значения в обоих вычисляемых полях будут моментально пересчитаны.
  7. Для формирования сложного выражения в вычисляемом поле или условии отбора целесообразно использовать построитель выражений. Построитель позволяет выбрать необходимые в выражении имена полей из таблиц, запросов, знаки операций, функции. Удалите выражение в вычисляемом поле и используйте построитель для его формирования.
  8. Вызовите построитель выражений (Expression Builder), нажав кнопку Построитель (Builder) в группе Настройка запроса (Query Setup) ленты Конструктор (Design), или выбрав Построить (Build) в контекстно-зависимом меню. Курсор мыши должен быть установлен предварительно в ячейке ввода выражения.
  9. В левой части окна Построитель выражений (Expression Builder) (рис. 4.7) выберите таблицу ТОВАР, на которой построен запрос. Справа отобразится список ее полей. Последовательно выбирайте нужные поля и операторы, двойным щелчком вставляя в выражение. Выражение сформируется в верхней части окна. Обратите внимание, построитель перед именем поля указал имя таблицы, которой оно принадлежит, и отделил его от имени поля восклицательным знаком.
  10. Завершите процесс построения выражения в вычисляемом поле, щелкнув на кнопке ОК.
  11. Сохраните запрос под именем ― Цена с НДС и закройте его.
  12. Выполните сохраненный запрос, выделив его в области навигации и выбрав в контекстном меню команду Открыть (Open).

Вычисляемые поля в запросах Access

Задача 2. В вычисляемых полях и условиях отбора можно использовать встроенные функции. В Access определено более 150 функций.
Пусть необходимо выбрать все накладные, по которым производилась отгрузка в заданном месяце. В таблице НАКЛАДНАЯ дата отгрузки хранится в поле ДАТА_ОТГ с типом данных Дата/время (Date/Time).

  1. Создайте в режиме конструктора запрос на выборку для таблицы НАКЛАДНАЯ. Перетащите в бланк запроса поля НОМ_НАКЛ и КОД_СК (рис. 4.8).
  2. Создайте вычисляемое поле в пустой ячейке строки Поле (Field), записав туда одно из выражений: Format([НАКЛАДНАЯ]![ДАТА_ОТГР];»mmmm») ― эта функция возвратит пол-ное название месяца
    или Format([НАКЛАДНАЯ]![ДАТА_ОТГР];»mm») ― эта функция возвратит номер месяца.
  3. Для отбора накладных, выписанных в заданном месяце, в вычисляемом поле в строку Условие отбора (Criteria) введите название месяца, например март (рис. 4.8), или номер месяца, например 3 в соответствии с параметром в функции Format.
  4. Выполните запрос, нажав кнопку Выполнить (Run) в группе Результаты (Results) на вкладке ленты Работа с запросами | Конструктор (Query Tools | Design).
  5. Запишите в вычисляемом поле функцию Month(НАКЛАДНАЯ!ДАТА_ОТГ), и убедитесь, что эта функция возвращает выделенный из даты номер месяца.
  6. Для выборки всех строк, относящихся ко второму кварталу, в строку Условие отбора (Criteria) введите оператор Between 4 And 6, определяющий, попадает ли значение выражения в указанный интервал.
  7. Запишите в вычисляемом поле выражение MonthName(Month(НАКЛАДНАЯ!ДАТА_ОТГ)) и убедитесь, что функция MonthName преобразует номер месяца в его полное на-звание.

Вычисляемые поля в запросах Access

Для закрепления смотрим видеоурок:

Параметрический запрос Access тут.

Как сделать сумму в запросе access?

Раздел 9. Анализ данных с помощью запросов. Запросы к базам данных Microsoft Access 2010.

База данных в Access — учет товаров на складеMix Fix

Создание базы данных «Список учета товаров на складе» Помощь каналу и автору R408413163597 Моя партнерская прогр…

Как быстро создать ПЕРЕКРЕСТНЫЙ запрос в базе данных Microsoft AccessУроки по Microsoft Access

Если вы не знаете как создать перекрестный запрос в программе Microsoft Access, то посмотрите это видео. Продолжаем…

3.10 Вычисляемые поля Microsoft Access 2010.Dmitrii Dmitrii

Раздел 3. Создание базы данных и работа с таблицами. Основы системы управления базами данных Microsoft Access 2010.

Microsoft Access № 78: создание двухуровневых подчинённых форм в AccessАндрей Домостой

Как создать двухуровневые подчинённые формы в Access? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонта…

Как сделать отчеты в базе данных Microsoft Access 2016Уроки по Microsoft Access

Если вы не знаете как создать базу данных в программе Microsoft Access 2016, то посмотрите это видео. Всего за 6 уроков…

73 Общая структура отчета в AccessСИЛА ЗНАНИЯ

7.1 Вычисления Microsoft Access 2010.Dmitrii Dmitrii

Раздел 7. Вычисления в запросах. Запросы к базам данных Microsoft Access 2010.

Microsoft Access № 77: применение составного индекса в AccessАндрей Домостой

Установим в таблице Access проверку уникальности по четырём полям при помощи составного индекса Access. КУПИТЬ…

Урок 8 Access ОтчетыMoodle Donguu

Microsoft Access № 22: сортировка и группировка в отчётах Access (1)Андрей Домостой

Как задать сортировку и группировку в отчётах Access? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонтак…

Microsoft Access № 64: запрос с параметром AccessАндрей Домостой

Что такое запрос с параметром в базе Microsoft Access? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонтакте:…

Сортировка и группировка данных с итогами в отчетах AccessУроки по Microsoft Access

Если вы не знаете, как построить отчет с группировкой в базе данных Microsoft Access, то посмотрите это видео. На…

9.5. Итоги в сводных таблицах Microsoft Access 2010.Dmitrii Dmitrii

Раздел 9. Анализ данных с помощью запросов. Запросы к базам данных Microsoft Access 2010.

Экспорт отчетов Access в Excel и WordУроки по Microsoft Access

Если вы не знаете, как перенести отчет из базы данных Microsoft Access, то посмотрите это видео. На простых примерах…

Microsoft Access № 80: установка часов на форме AccessАндрей Домостой

5 способов добавления текущего времени на форму Access и в строку состояния Access. КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТ…

Конструктор отчетов в базе данных Microsoft AccessУроки по Microsoft Access

Если вы не знаете, как построить отчет с помощью конструктора в базе данных Microsoft Access, то посмотрите это…

Как сделать нумерацию строк в отчете AccessУроки по Microsoft Access

Если вы не знаете, как сделать нумерацию строк в отчете базы данных Microsoft Access, то посмотрите это видео. Убеди…

25 Копирование таблиц в AccessСИЛА ЗНАНИЯ

Microsoft Access № 74: как узнать количество работников (записей) в списке AccessАндрей Домостой

Как узнать, сколько записей (расчёт количества работников) содержится в списке Access? КУПИТЬ ВИДЕОКУРСЫ ИЛИ…

1.6 часть — Вычисляемое поле «Сумма»GTIFEMBI

Установка сумма прописьюАндрей Панферов

SQL. SUM() OVER. Сумма накопленным итогом и общая сумма по полю.Александр Крысин

В видео рассказывается, как посчитать сумму накопленным итогом, а так же общую сумму по полю. P.S. задавайте…

3.11 Проверка полей Microsoft Access 2010.Dmitrii Dmitrii

Раздел 3. Создание базы данных и работа с таблицами. Основы системы управления базами данных Microsoft Access 2010.

Поиск повторяющихся записей в запросах AccessУроки по Microsoft Access

Узнайте, как найти повторяющиеся данные в Access с помощью запроса. Продолжаем работать с базой данных Access…

Создание запросов в СУБД Access 2013 (запрос на выборку, создание таблицы и удаление)Vitaliy Melnikov

Исходный файл БД Movies можно скачать по ссылке ниже! В этом видео демонстрируются примеры создания 3 видов…

SQL: создаем запросы на выборку (SELECT) в Microsoft AccessУроки по Microsoft Access

Если вы не знаете как создать SQL-запросы в базе данных Microsoft Access, то посмотрите это видео. На примере стандарт…

Как создать таблицы в Microsoft Access за 8 минутУроки по Microsoft Access

Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Готовые базы Access: 7108.ru/g0203 Если…

бд Риэлторская контора accessDB Access

База данных «Риэлторская контора» описана на сайте …

Создание отчета в Access с помощью мастераУроки по Microsoft Access

Если вы не знаете как создать отчет в Access с помощью мастера, то посмотрите это видео. В этом уроке поговорим…

Запрос с выпадающим списком в базе данных AccessУроки по Microsoft Access

Если вы не знаете как создать параметрический запрос с выпадающим списком в базе данных Access, то посмотрите…

Microsoft Access № 67: решение проблемы форматирования в отчёте AccessАндрей Домостой

Когда нас может выручить режим макета при работе с отчётом Access. КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.g…

Вычисление суммыАнастасия Трубицына

44 Определение связей в AccessСИЛА ЗНАНИЯ

Как в ворде вставить формулу суммыСайт Helpadmins

Смотрим как в ворде 2010 вставить формулу и посчитать сумму в таблице helpadmins.ru/kak-v-vorde-poschitat-summu-v-tablice/

Сумма прописью в ExcelВиталий Б

Скачать надстройку можно по ссылке; drive.google.com/open?id=0B3A8_z_zeZ7Bei1NbDAySDJGNjA.

Консолидация (сборка) данных из нескольких таблиц в ExcelNikolay Pavlov

Как собрать данные из нескольких таблиц (одинаковых или не очень) в один итоговый отчет в Excel. Подробно и…

Группировка записей в представлениях и вычисления с использованием статистических функций, в том числе суммирование, выполняются так же, как в запросах базы данных Access (см. разд. «Создание и изменение запроса с помощью Конструктора запросов»гл. 4).

Вместо строки Групповая операция (Totals) в бланке запроса Конструктора запросов в проекте присутствует столбец Группировка (Group by). По умолчанию этот столбец скрыт. Для того чтобы вывести его на экран, нужно нажать кнопку Группировка (Group By) на панели инструментов. Столбец Группировка (Group by) добавляется в бланк представления, и для всех полей, включенных в представление, этому полю присваивается значение Группировка (Group by). Можно затем в отдельных строках заменить значение (Group by) необходимыми статистическими функциями (сумма — Sum, среднее — Avg, число значений — Count и т. д.). В результате на нижней панели соответствующим образом изменится инструкция SQL. Чтобы ввести условие на выборку записей, можно использовать две разновидности инструкции SELECT:

  • если в столбце Группировка (Group by) установлено значение параметра WHERE, тогда в инструкцию SELECT добавляется, условие WHERE с критериями выборки;
  • если столбец Группировка (Group by) имеет другие значения, тогда в инструкцию SELECT добавится условие HAVING.

Пример вычисления общей суммы в таблице базы данных Microsoft Access без использования SQL-запроса

Бывают случаи, когда в таблице базы данных нужно посчитать сумму числовых значений некоторого столбца. Для этого существуют разные методы вычисления, один из которых базируется на использовании соответствующего SQL-запроса.

В данной задаче, на примере таблицы Microsoft Access, вычисляется общая сумма без использования SQL-запроса. Дополнительно вычисляется среднее арифметическое значений ячеек заданного столбца.

Используя данный пример, можно создавать любые числовые вычисления над множеством записей заданного столбца.

Условие задачи

Дана таблица, сформированная средствами СУБД Microsoft Access. Таблица содержит данные с начисленной заработной платой сотрудников.

Таблица имеет следующую структуру.

Сразу после загрузки, приложение должно вычислять общую начисленную сумму и среднее арифметическое. Результат нужно выводить в компоненты типа TStaticText.

Решение

Создать приложение как Windows Forms Application.

Сохранить проект под любым именем.

Разместить на форме следующие компоненты (рис. 1):

– из вкладки “dbGo” компонент TADOConnection. Создается объект с именем ADOConnection1;

– из вкладки “Data Access” компонент TDataSource. Создается объект с именем DataSource1;

– из вкладки “dbGo” компонент типа TADOTable. Создается объект с именем ADOTable1;

– из вкладки “Data Controls” компонент типа TDataGrid. Создается объект с именем DBGrid1;

– из вкладки “Additional” три компонента типа TStaticText. Создаются объекты с именами StaticText1, StaticText2.

В компоненте StaticText1 будет выведена общая сумма.

В компоненте StaticText2 будет выведена средняя заработная плата (среднее арифметическое).

Рис. 1. Компоненты формы

  1. Подключение базы данных. Свойство ConnectionString компонента ADOConnection1.

Процесс подключения приложения к базе данных Microsoft Access подробно описан здесь.

В результате формируется строка ConnectionString в компоненте ADOConnection1 (рис. 2). В этой строке указывается тип поставщика данных и полный путь к файлу базы данных.

Рис. 2. Строка ConnectionString компонента ADOConnection1

  1. Настройка компонент ADOConnection1, ADOTable1, DataSource1, DBGrid1.

Чтобы отобразить таблицу базы данных, нужно настроить следующие свойства компонент:

– в компоненте ADOConnection1 свойство LoginPrompt = “false” (рис. 3) (отмена запроса имени пользователя и пароля для доступа к базе данных);

– в компоненте ADOTable1 свойство Connection = “ADOConnection1” (рис. 4);

– в компоненте DataSource1 свойство DataSet = “ADOTable1” (рис. 5);

– в компоненте DBGrid1 свойство DataSource = “DataSource1” (рис. 6);

– в компоненте ADOTable1 свойство TableName = “Worker” (рис. 7);

– в компоненте DBGrid1 из свойства Options установить опцию dgEditing = false (запрет внесения данных в ячейки таблицы непосредственно из сетки DBGrid1) (рис. 8).

Рис. 3. Свойство LoginPrompt компонента ADOConnection1

Рис. 4. Свойство Connection компонента ADOTable1

Рис. 5. Свойство DataSet компонента DataSource1

Рис. 6. Свойство DataSource компонента DBGrid1

Рис. 7. Свойство TableName компонента ADOTable1

Рис. 8. Опция dgEditing свойства Options компонента DBGrid1

Для отображения данных в таблице нужно выполнить следующие действия (рис. 9):

– выделить таблицу ADOTable1;

– свойство Active = true.

После этого данные таблицы отобразятся в DBGrid1.

Рис. 9. Свойство Active компонента ADOTable1

  1. Настройка размеров компонент и формы.

Следующим шагом нужно настроить размеры и позиции компонент на форме, как изображено на рисунке 10.

Рис. 10. Основная форма приложения

  1. Скрытие поля ID_Worker в DBGrid1.

Чтобы отображаемая таблица имела корректный вид, нужно скрыть поле ID_Worker, которое есть ключевым полем. В таблице это поле является счетчиком. При добавлении новой записи значение в этом поле формируется автоматически (увеличивается на 1).

Сначала нужно вызвать редактор полей (“Fields Editor…”) компонента ADOTable1 из контекстного меню (рис. 11).

Рис. 11. Вызов редактора полей компонента ADOTable1

Откроется окно Form1.ADOTable1. В этом окне, с помощью мышки, нужно вызвать контекстное меню. В контекстном меню выбрать команду «Add All fields».

В результате, окно редактора примет вид, как изображено на рисунке 12.

Рис. 12. Редактор полей

В редакторе полей Form1.ADOTable1 отображаются все поля таблицы Worker. Чтобы удалить поле ID_Worker, нужно на строке ID_Worker сделать клик правой кнопкой «мыши» и в контекстном меню выбрать команду Delete. После этого можно закрыть редактор.

В результате, в таблице DBGrid1 будет отображено только два поля (рис. 13).

Рис. 13. Отображение таблицы Worker с двумя полями

  1. Установление фильтра вывода с двумя знаками после запятой в поле Salary.

Для того, чтобы в поле Salary корректно отображалось значение суммы (2 знака после запятой) нужно выполнить следующие действия.

Выделить компонент ADOTable1. Вызвать редактор полей “Fields Editor…” так как описано в пункте 6. В результате откроется список из двух полей Name и Salary. Выделить строку с названием Salary. В Object Inspector будет активирован объект с именем ADOTable1Salary.

Следующим шагом нужно в Object Inspector в поле “Display Format” установить значение «0.00» (рис. 14).

Рис. 14. Установление формата вывода в поле Salary объекта ADOTable1

После выполненных действий, поле Salary в таблице будет выводиться с точностью 2 знака после запятой.

Для сохранения данных суммы и среднего арифметического нужно ввести в текст класса формы TForm1 внутренние переменные с именами sum и avg.

Переменные вводятся в раздел private. Фрагмент кода класса TForm1 формы имеет следующий вид:

. type TForm1 = class(TForm) ADOConnection1: TADOConnection; DataSource1: TDataSource; ADOTable1: TADOTable; DBGrid1: TDBGrid; StaticText1: TStaticText; StaticText2: TStaticText; StaticText3: TStaticText; ADOTable1Name: TWideStringField; ADOTable1Salary: TFloatField; procedure FormActivate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private < Private declarations >sum:real; // сумма avg:real; // среднее арифметическое public < Public declarations >end; .
  1. Программирование события активизации формы.

Как только пользователь загрузит программу, нужно сразу рассчитать значения суммы и среднего арифметического в таблицы.

Поэтому, нужно запрограммировать событие OnActivate формы Form1. Событие OnActivate вызовется в момент активизации формы после запуска программы на выполнение.

Пример программирования события в Delphi подробно описан здесь.

В нашем случае обработчик события имеет следующий вид:

procedure TForm1.FormActivate(Sender: TObject); var f:TField; // дополнительная переменная типа «Поле» begin // 1. Проверка, есть ли записи в таблице if ADOTable1.RecordCount = 0 then exit; // 2. Отключить визуализацию в DBGrid1 ADOTable1.DisableControls; // 3. Перебор всех записей таблицы Worker // 3.1. Перейти на первую запись ADOTable1.First; // 3.2. Обнулить сумму sum := 0; // 3.3. Взять значение зарплаты из первой записи f := ADOTable1.FieldByName('Salary'); // 3.4. Цикл перебора записей в таблице // - проверка на достижение конца таблицы while ADOTable1.Eoftrue do begin // 3.4.1. Увеличить сумму sum := sum + f.Value; // 3.4.2. Перейти на следующую запись ADOTable1.Next; end; // 4. Вычислить среднее арифметическое avg := sum / ADOTable1.RecordCount; // 5. Заполнить строки типа TStaticText StaticText1.Caption := 'Сумма: ' + FloatToStr(sum, ffFixed, 8, 2); StaticText2.Caption := 'Средняя зарплата: ' + FloatToStr(avg, ffFixed, 8, 2); // 6. Включить визуализацию в DBGrid ADOTable1.EnableControls; end;

Объясним некоторые фрагменты кода.

Методы DisableControls и EnableControls отвечают за отключение и включение подключенных к набору данных (базы данных) визуальных элементов управления. Вызов метода DisableControls позволяет значительно ускорить процесс перебора записей, поскольку заставит приложение не тратить время на перерисовывание содержимого элемента управления DBGrid1 с каждым изменением записи.

ADOTable1.RecordCount

указывает число записей в таблице.

ADOTable1.First

устанавливает активным первую запись таблицы.

ADOTable1.FieldByName()

позволяет получить объект типа TField для заданного поля. Потом в этом объекте можно получить информацию из текущей записи. В программе для доступа к значениям записей поля Salary, используется дополнительная переменная f типа TField. Чтобы прочитать значение в текущей записи поля Salary достаточно вызвать оператор

f.Value
ADOTable1.Eof

становится равным true, если достигнут конец таблицы.

ADOTable1.Next

реализует переход на следующую запись таблицы.

Результат суммы выводится в свойстве Caption компонента StaticText1.

Значение среднего арифметического выводится в свойстве Caption компонента StaticText2.

Теперь можно запустить приложение на выполнение.

Похожие статьи:

013 — Пример вычисления общей суммы в таблице базы данных Microsoft Access с использованием SQL-запроса. Компонент TDBText.

Примеры выражений

В этой статье представлено множество примеров выражений в Access. Выражение — это сочетание математических или логических операторов, констант, функций, полей таблицы, элементов управления и свойств, результатом вычисления которого является одно значение. Выражения в Access можно использовать для вычисления значений, проверки данных и задания значения по умолчанию.

В этой статье

Формы и отчеты
Запросы и фильтры

Формы и отчеты

Таблицы, приведенные в этом разделе, содержат примеры выражений, вычисляющих значение в элементе управления в форме или отчете. Чтобы создать вычисляемый элемент управления, введите выражение в свойство Данные элемента управления, а не в поле таблицы или запроса.

Примечание Выражения также можно использовать в формах или отчетах при выделении данных с помощью условного форматирования.

Операции с текстом

В выражениях, приведенных в таблице ниже, используются операторы & (амперсанд) и + (плюс) для объединения текстовых строк, а также встроенные функции для обработки текстовых строк или выполнения с ними других действий с целью создания вычисляемого элемента управления.

Отображает значения, хранящиеся в полях таблицы FirstName и LastName. В данном примере оператор & используется для объединения значения в поле «Имя», пробела (заключенного в кавычки) и значения в поле «Фамилия».

Функция Left используется для отображения первого знака в значении поля или элемента управления «НазваниеТовара».

Функция Right используется для отображения последних 2 знаков в значении поля или элемента управления «КодТовара».

Функция Trim используется для отображения значения в элементе управления «Адрес» и удаления всех пробелов в начале или конце строки.

=IIf(IsNull([Region]), [City] & » » & [PostalCode], [City] & » » & [Region] & » » & [PostalCode])

Функция IIf используется для отображения значений элементов управления City и PostalCode, если элемент управления Region имеет пустое значение; в противном случае отображаются значения в элементах управления City, Region и PostalCode, разделенные пробелами.

=[City] & (» » + [Region]) & » » & [PostalCode]

Оператор + и распространение значений Null используются для отображения значений в элементах управления «Город» и «Индекс», если элемент управления или поле «Область» имеет значение Null; в противном случае отображаются значения в элементах управления или полях «Город», «Область» и «Индекс», разделенные пробелами.

Распространение значений Null означает, что если хотя бы один компонент выражения возвращает значение Null, то и все выражение также возвращает Null. Оператор + поддерживает распространение значений Null, а оператор & — нет.

Колонтитулы

Для отображения или печати номеров страниц в отчетах или формах используются свойства Page и Pages. Свойства Page и Pages доступны только во время печати или предварительного просмотра, поэтому они не отображаются на странице свойств формы или отчета. Обычно эти свойства используются путем перемещения текстового поля в область верхнего или нижнего колонтитула в форме или отчете и применения выражения, например из приведенной ниже таблицы.

Дополнительные сведения об использовании колонтитулов в формах и отчетах см. в статье Вставка номеров страниц в форму или отчет.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *