Что запрос с параметром в access. Использование параметров для ввода данных при выполнении запроса. Создание запроса типа "внешнее объединение"

Использование окна запроса

1. Создание простого запроса

Откроем базу данных STUD, как было рассмотрено в ЛР1. Создадим запрос, выводящий информацию о студентах, у которых имеются задолженности.

Для создания запроса активизируем окно базы данных (см. ЛР1). После этого щелкнем по корешку "Запрос" и кнопке "Создать". В появившемся диалоговом окне "Создание запроса" выберите кнопку "Конструктор". Access откроет диалоговое окно "Добавление таблицы", позволяющее выбрать базовые таблицы и запросы для создаваемого запроса. Выберите таблицы "Результаты" и "Cтуденты", нажимая кнопку "Добавить", после чего закройте это окно кнопкой "Закрыть".

Открывшееся окно конструктора запросов состоит из двух частей: верхняя содержит списки полей выбранных таблиц, а нижняя - бланк QBE для создания запроса. Каждый столбец бланка описывает одно поле, участвующее в запросе.

Включение поля в запрос производится перетаскиванием его из списка полей таблиц (расположенного в верхней части экрана) в нужный столбец бланка QBE при помощи мышки. Включение всех полей таблицы происходит перетаскиванием символа "*", находящегося вверху списка полей данной таблицы в верхней части экрана.
Включите в запрос поля таблицы "Результаты":

Предмет
Номер_С

перетащив их в бланк QBE . Рассмотренным выше методом перетащите из таблицы “Студенты” поле Фамилия.


Запрос “Задолженность” будет иметь вид, как показано на рисунке.
Установка связей между таблицами производится автоматически, используя структуру связей, созданную при генерации проекта БД. Можно задавать другие варианты связи таблиц и иные типы связей (внешнее объединение, "один-к-одному", "один-ко-многим" и т.д.). Изменение связей производится в верхней части окна выбором связанного поля в описании одной таблицы и транспортировкой его при нажатой кнопке мышки на описание соответствующего поля связанной таблицы. Тип связи можно изменить, активизировав ее щелчком мышки на линии связи.

Условие для отбора нужных нам полей производится включением этого условия для данного поля в строке QBE "Условие отбора". Несколько значений отбора вводятся в одну строку, разделенные логическими условиями AND или OR, либо вводятся в последующие ячейки строки "или".
Установим для таблицы "Результаты" условие отбора студентов, у которых задолженности, для чего в столбец описания поля внесем строку "Задолженность" из таблицы "Результаты", и в строке "Условие отбора" введем:
Да

Сбросим для этого поля флажок "Показать", запрещающий вывод данного поля в выборке (т.к его не обязательно выводить).
Кроме стандартных операторов сравнения "=", "<", ">", "<=", ">=", Access поддерживает также BEETWEN, IN, LIKE.
В запросе могут присутствовать т.н. вычисляемые поля - вычисленные значения над любыми полями таблицы. Access поддерживает большое число функций и операторов, применяемых при генерации вычисляемых полей.
Чтобы просмотреть результат запроса необходимо на панели нажать кнопку:

Изменить заголовок можно также активизировав столбец с описанием поля; а затем выполнив команду "Свойства" меню "Вид", ввести в строку "Подпись поля" его название.

Строки итоговой таблицы желательно отсортировать по полю "Фамилия" таблицы "Студенты". Для этого в столбце с описанием данного поля в строке "Сортировка" выберем пункт "по возрастанию". При необходимости сортировки по нескольким полям Access сортирует данные в порядке их расположения в бланке QBE. После просмотра запроса видно, что необходимо ввести поле Имя из таблицы “Студенты”, т.к фамилии повторяютя и запрос не несет необходимой информации. Чтобы вставить поле, перетяните его в сетку QBE на место, где он должен находится и все остальные поля передвинуться на одну позицию в право.
Запустить полученный запрос на выполнение можно также командой "Выполнить" меню "Запрос". Проверим полученные результаты на соответствие критериям отбора. Сохраним полученный запрос под именем "Задолженности". Запрос представляет собой таблицу:

Создадим запрос, в котором будет вычисляться дополнительное поле. Кафедра вычислительной техники решила своим работникам к новому году выплатить премию в размере 10% от зарплаты. Создадим запрос на базе таблицы “Преподаватели”, с полями Фамилия, Кафедра, Должность, Зарплата. Чтобы создать вычисляемое поле “Премия”, выводящее информацию о величине премии работнику, в новом столбце (следующим за заполненным), в строке “Поле” введем выражение Зарплата*0,1. Изменим заголовок поля, введя перед выражение его название. Ячейка будет содержать: «Премия: [Зарплата]*0,1».

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

1.2. Создание итогового запроса

Итоговые запросы позволяют получать статистическую информацию по группам данных, как например: сумму, среднее арифметическое, мат.ожидание, дисперсию значений полей таблицы; число значений полей, удовлетворяющих определенным условиям и т.д.
Создадим запрос среднего бала студента. Откроем новый бланк запроса, внесем в него таблицу "Студенты", “Результаты” и установим вывод полей "Номер_С", "Фамилия", "Оценка_Т", "Оценка_П", “Оценка_Л”.

Для вычисления в запросе итоговых значений щелкнем по кнопке "Групповые операции" панели инструментов. В бланке QBE появится строка "Групповая операция", где для каждого описанного поля в этой строке установлено по умолчанию "Группировка". Теперь записи по каждому полю будут группироваться, но итог подводиться не будет. Для выведения итоговых значений необходимо вместо слова "Группировка" установить какую-нибудь групповую операцию (см прил.1).
Для полей “Оценка_Т”, “Оценка_П”, “Оценка_Л” операцию "Avg", выводящую среднее значение поля для группы записей (получим средний бал).

Изменим также заголовки полей выводимой таблицы. Для этого в описании полей в строке "Поле" введем их новые названия, отделяя их от описания двоеточием:
Оценка_Т: Теория
Оценка_П: Практика
Оценка_Л: Лабы

Часть выражения, расположенная до двоеточия выводится после запуска запроса как заголовок столбца, вместо выводимого Access по умолчанию. Таким способом можно формировать более понятные заголовки полей, чем генерируемые базой.
Сохраним полученный запрос под именем "Итог". Запустите запрос и проанализируйте полученные результаты.

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

Создадим запрос, выводящий список преподавателей работающих на задаваемой пользователем кафедре. За основу возьмем таблицу "Преподаватели". Выберем в бланк вывода пункт "Преподаватели.*", выводящий все поля таблицы "Преподаватели”. Введем еще раз описание поля “Кафедра”, сбросим для него флажок вывода на экран, и в строке "Условие отбора" этого поля введем выражение:
=[Введите название кафедры]

Сохраним полученный запрос как "Выборка преподавателей по кафедрам". Выполнив запуск запроса, мы увидим диалоговое окно, запрашивающее название кафедры.

После ввода параметра Access выводит список преподавателей, местом работы которых является запрашиваемая кафедра.
Ввод параметров можно использовать при любом типе запросов: итоговом, перекрестном, запросе-действии и т.д.

1.4. Создание перекрестного запроса

Access поддеpживает специальный тип итоговых запpосов, называемый перекрестным. Перекрестный запрос выводит вычисленные значения как функцию от существующих полей. Так в Access можно вывести запрос, описывающий суммарный зароботок по должностям.
Необходимое требование к созданию перекрестного запроса наличие поля - заголовка строки, поля - заголовка столбца, и одно поле вычисляемого значения. Поля, являющиеся заголовками строк и столбцов должны иметь в строке "Групповая операция" установку "Группировка". Для поля - значения необходимо выбрать в "Групповой операции" какую-либо групповую функцию, или выражение, содержащее групповую операцию.

Для нашего запроса для таблицы "Преподаватели" в меню "Запрос" установим указатель "Перекрестный". Access добавит в блок QBE строку "Перекрестная таблица". Затем в бланк перенесем поле "Должность", установим “заголовки столбцов”.

Следующее поле-"Кафедра”, установим “заголовки строк”
Результирующее поле- “Зарплата” , для него установим “значение”
"групповая операция" - Avg,
Сохраним полученный запрос под имеем "Зарплаты по должностям".

1.5. Создание запроса типа "внешнее объединение"

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

Создадим запрос, выводящий информацию обо всех студентах, с задолженностями и без. В этом запросе будет использоваться внешнее объединение таблиц "Студенты" и "Результаты" по совпадению поля "Номер_С" со всеми записями таблицы "Студенты".
Для создания внешнего объединения необходимо изменить параметры объединения. Откроем запрос "Задолженность" в режиме конструктора. Щелкнем по линии связи между таблицами "Студенты" и "Результаты" для открытия диалогового окна "Параметры объединения".

По умолчанию в этом окне установлен тип объединения "выведение только тех записей, для которых совпадают связанные поля". Другие типы объединение позволяют выводить "все записи главной таблицы и только те записи дочерней, для которых совпадают значения связанных полей" и "все записи дочерней и только те записи главной, для которых связанные поля совпадают".

Выберем третий тип связи и щелкнем на кнопке "Ок". После этого на линии соединения таблиц появится стрелка, указывающая на внешнее объединение. Сохраним модифицированный запрос (через “Сохранить как” ("Save as.."), чтобы не затереть предыдущий запрос) под именем "Внешнее объединение по студентам".

Запросы с параметром создаются в тех случаях, когда предполагается выполнять этот запрос многократно, изменяя лишь условия отбора. В качестве параметра может быть любой текст, смысл которого определяет значение данных, которые будут выведены в запросе. Значение параметра задается в специальном диалоговом окне. В случае, когда значение выводимых данных должно быть больше или меньше указываемого значения параметра, в поле «Условие отбора» бланка запроса перед параметром, заключенным в квадратные скобки, ставится соответствующий знак. Можно также создавать запрос с несколькими параметрами, которые связываются друг с другом логическими операциями И и ИЛИ . Помимо определения параметра в бланке запроса, необходимо указать с помощью команды Запрос/Параметры соответствующий ему тип данных:

1. Откройте в режиме Конструктора окно запроса и добавьте в него таблицу. Создайте запрос, «перетащив» необходимые поля в бланк запроса и задав условие выбора.

2. В качестве условия введите параметр, заключенный в квадратные скобки (например, [Введите название] или >[Выше какого роста?]).

3. Выберите команду Запрос/Параметры .

4. В появившемся окне Параметры запроса введите без квадратных скобок параметр (для точности ввода воспользуйтесь «быстрыми» клавишами копирования и вставки из буфера обмена) и укажите соответствующий ему тип данных. Нажмите ОК .

5. Нажмите кнопку Запуск панели инструментов.

6. В появившемся окне укажите значение параметра.

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

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

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

Квадратные скобки ([...]), в них заключаются имена элементов управления;



Знаки номеров (#), в них заключаются распознанные даты;

Кавычки (""), в них заключается текст, не содержащий пробелов или знаков пунктуации.

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

Например : Прибыль:[Доход]-[Расход].

Запрос на создание таблицы

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

Таблица . Для создания резервной копии таблицы (таблицы, содержащей те же поля и в том же количестве, что и в оригинале), чтобы не перетаскивать все поля таблицы в строку «Поле», достаточно поместить туда символ *, заменяющий все поля таблицы и находящийся в начале списка полей таблицы.

2. Вернувшись в режим конструктора, выберите команду Запрос/Создание таблицы ....

3. В появившемся окне введите имя новой таблицы и нажмите ОК .

Запрос на обновление

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

1. Создайте новый запрос выбора и проверьте его корректность, перейдя в режим Таблица .

2. Вернувшись в режим Конструктора, выберите команду Запрос/Обновление .

3. В появившейся в бланке запроса строке «Обновление» в соответствующих столбцах задайте новые значения полей таблицы. В качестве таковых могут выступать и вычисляемые значения. В случае необходимости воспользуйтесь Построителем выражений .

Запрос на добавление записей

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

1. Создайте новый запрос выбора тех блоков данных, которые будут добавлены в некоторую таблицу и проверьте его корректность, перейдя в режим Таблица .

2. Вернувшись в режим Конструктора , выберите команду Запрос/ Добавление ....

3. В появившемся окне введите имя таблицы, к которой нужно присоединить данные, и нажмите ОК .

Запрос на удаление записей

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

1. Создайте новый запрос выбора удаляемых блоков данных. Отбор блоков данных выполняется в соответствии с заданными в строке Условие критериями .

2. Проверьте корректность сформулированных условий, перейдя в режим Таблица .

3. Вернувшись в режим конструктора, выберите команду Запрос/Удалить .

4. В появившейся строке Удалить установите дополнительные критерии отбора.

Создание формы

ФормыAccess позволяют создавать пользовательский интерфейс для таблиц базы данных. Форма представляет собой некий электронный бланк, в котором имеются поля для ввода данных. В форме можно: каждое поле можно разместить в точно заданном месте, выбрать для него цвет и заливку; помещать вычисляемые поля; ОLЕ-обьекты; намного проще работать с большими текстами поля типа МЕМО в текстовом окне с полосами прокрутки.

Форма строится на основе Access-таблицы или запроса . При каждом открытии сохраненной формы обновляются данные запроса, на основе которого создается форма. Благодаря этому содержимое формы всегда соответствует информации в таблицах и запросах.

Формы могут быть выведены на экран в трех видах: режим конструктора , режим формы и режим таблицы.

Access предоставляет быстрый способ создания формы на основе таблицы с использованием Мастера форм . Он задает пользователю вопросы о структуре и оформлении формы. Результатом диалога пользователя и Мастера форм является «готовая к работе» форма.

Пример

Создать таблицу и формы в режиме конструктора

1. Запустите MS Access /Новая база данных или Открыть базу данных /ОК

2. На экране появляется диалоговое окно Файл новой базы данных . В графе Имя файла вместо db1 набираем Европа /нажимает кнопку Создать после чего на экране появляется окно, в котором создается база данных

3. Нажимаем вкладку Таблицы /Создать

4. В появившемся окне Новая таблица выбираем пункт Конструктор /ОК

5. В окне таблица 1: таблица начинаем заполнять таблицу.

6. В графу Имя поля будем записывать имена полей. В нашем примере поля будут иметь следующие имена:

№ п/п, страна, площадь, население, столица, язык, валюта, карта.

Данные полябудут иметь следующиетипы данных (тип данных выбирается мышкой щелкнув по черному треугольнику):

№ п/п, площадь, население - числовой;

страна, столица, язык, валюта- текстовый;

Карта – поле объекта OLE

7. Внесем в таблицу имена полей и их тип, а затем закроем таблицу, нажав на кнопку X , расположенную в правом верхнем углу окна таблицы.

8. Запишем в окне Сохранение нашу таблицу под именем Страны/ОК

9. На вопрос Задать ключевые поля ? Ответить Нет, т.к. в нашей базе данных мы будем вызывать созданную таблицу по имени, а не по ключевому слову.

10. Нажать Открыть в окне Европа: база данных . Если вы захотите дополнить поля или изменить их тип, то должны будете нажать кнопку Конструктор.

11. Открыть Страны, на экране появится окно таблицы, заполнить ее. Для перемещения из одного поля в другое можно нажимать клавиши Enter, Tab или пользоваться установочными клавишами.

12. Для вставки карты в полеКарта выполнить следующий алгоритм: установить курсор в поле Карта / выбрать в главном меню пункт Вставка/Объект/Microsoft Clip Gallery/ ОК/ Карты/ Выбрать карту и вставить ее щелкнув левой кнопкой мыши (или из файла/обзор/открыть любую папку с рисунками)

Таблица 5.2

13. Расположите страны по алфавиту (выделить поле Страна и воспользоваться сортировкой по возрастанию)

14. Вывести на экран страну с наибольшей площадью.(Выделить курсором наибольшую площадь/)

15. Вывести на экран страну с наименьшим количеством населения. (Выделить курсором наименьшую цифру/Записи/Фильтр по выделенному/Записи/Удалить фильтр )

16. Вывести на экран столицы, начинающиеся с одной буквы (Выделить первую букву/Записи/Фильтр по выделенному/Записи/Удалить фильтр )

17. Вывести на экран страны, имеющие одинаковый государственный язык (Поставить курсор на нужную запись/Записи/Фильтр по выделенному/ Записи/ Удалить фильтр)

18. Работа с ФОРМАМИ : закрыть таблицу/выбрать объект ФОРМА/СОЗДАТЬ С ПОМОЩЬЮ МАСТЕРА /выбрать все поля с помощью кнопки >> /далее выполнять действия по алгоритму/(в один столбец)/готово.

19. После создания ФОРМЫ для того, чтобы рисунок вписывался по размеру окна необходимо щелкнуть по рисунку правой кнопкой/выбрать СВОЙСТВА / МАКЕТ/вкладку УСТАНОВЛЕНИЕ РАЗМЕРА: выбрать ПО РАЗМЕРУ

Создание отчета

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

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

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

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

Пошаговая инструкция

id="a1">

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

Чтобы установить ввод параметра вместо определенного значения, следует ввести в раздел «Условие отбора» имя или фразу, заключенную в квадратные скобки. Только после этого, Access будет рассматривать информацию и выводить её как комментарий к параметрам. Для использования нескольких изменяемых критериев, следует придумать им уникальные имена.

  1. Для примера создайте запрос, демонстрирующий список преподавателей, работающих на определенной кафедре. Именно этот критерий будет изменяемым, потому в строчке «Условия отбора» необходимо ввести значение =[Введите название кафедры].
  2. Сохраните полученный фильтр под названием «Выборка преподавателям по кафедрам».
  3. Теперь после запуска вы увидите диалоговое окошко, в котором потребуется ввести необходимое название, после чего появится список преподавателей, которые числятся на этой кафедре.

Запрос с параметром в Aксесс можно задействовать в любом типе выборки: итоговой, перекрестной или в запросе-действии.

Обычный способ разработки запроса с параметром в Access – создать параметры и установить их в условиях отбора с квадратными скобками. При запуске запроса последовательно появляются окна ввода, в которые пользователь должен ввести нужные значения. При этом нельзя вернуться к предыдущему окну и исправить ошибочно введенные данные. Пользователь должен вводить значения вручную, без выбора из списка, что тоже повышает вероятность ошибки.
Рассмотрим еще способ, при котором данные будут подставляться из формы.
Для примера возьмем . Создадим запрос, который будет отбирать абитуриентов по специальности и учебному заведению. Запускаться запрос будет из формы. На вкладке «Создание» в разделе «Формы» выберем пункт «Пустая форма».
Добавим на форму 2 поля со списком и две кнопки.
Поле со списком
На первом шаге выбираем способ получения значений:


То есть объект будет получать данные из другой таблицы или запроса.
Затем выбираем источник данных (таблицу специальностей):


Затем выберем нужные поля для помещения в поле:


Следующий шаг – сортировка. Установим по названию, но можно и по шифру.
Затем скрываем ключевой столбец


Указываем подпись к этому элементу. Затем переименовываем его, например, ПолеСпециальность.
Точно так же создаем поле со списком учебных заведений, но включаем в него два поля – учебное заведение и город:


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


Коды можно не выводить на экран.
Поставим параметры в условие отбора. Для этого нажимаем правую кнопку мыши на ячейку «Условие отбора» в нужном поле и выбираем пункт контекстного меню «Построить». Затем выбираем значения как на рисунке:


Нажимаем Ок.
Подставленное значение:
[Формы]![Форма для отбора по специальности и Уз]![ПолеСпециальность]
Затем так же создаем параметр в поле кода учебного заведения, но выбираем другое поле со списком.
Сохраняем запрос («ПарамЗапрос»).
Возвращаемся в форму и добавляем кнопку «Выполнить запрос».
На первом шаге Мастера запросов выбираем действие: категория «Разное», действие «Выполнить запрос». Затем из списка запросов выбираем наш «ПарамЗапрос». Затем выбираем подпись или картинку для кнопки. Сохраняем кнопку.
Добавляем вторую кнопку – для выхода. С помощью мастера указываем категорию – «Работа с формой», действие «Закрыть форму».
Сохраняем форму.
После запуска формы выбираем нужные поля и запускаем запрос:

Создание параметрических запросов

Параметрический запрос каждый раз при выполнении требует ввода определенных параметров (условий отбора).

Чтобы установить параметр нужно вместо конкретных данных в бланк QBE в строку условие отбора ввести имя или фразу, заключенную в квадратные скобки, т.е. параметр.

Преимущества параметрического запроса:

Не нужно постоянно модифицировать запрос в режиме Конструктора;

Использование в формах и отчетах, т.к. каждый раз при их открытии MsA запрашивает у пользователей требуемый параметр.

Например :

Between [Введите начальную дату:] And [Введите конечную дату:].

Чтобы выполнить поиск слов, начинающихся с указанного символа:

LIKE [Введите первый символ для поиска:] & "*" Замечание : если необходимо изменить тип данных параметра, нужно выполнить команду Запрос ® Параметры и в диалоговом окне Параметры запроса ввести имена параметров в столбец Параметры в том виде в каком вводили в бланк QBE, а также Тип данных из списка. По умолчанию Тип параметра - Текстовый.

29.Создание итог. запросов. Установки групп. операций. Назначение группировки. Примеры.

Запросы, выполняющие вычисления в группах записей, называются итоговыми запросами .

Для создания итогового запроса необходимо добавить строку Групповая операция в бланк QBE запроса выборки в режиме Конструктора

Добавить строку Групповая операция можно след. образом:*Пункт меню Вид, Груп. операции; *Кнопка Σ (групповые операции) на панели инструментов.

Обобщающие запросы по всем записям

Обобщающие запросы для одной группы записей

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

Обобщающие запросы для нескольких групп записей

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



Группировка с использованием критериев

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

Эти ограничения можно применять к трем типам полей:

Ø поле, обработанное установкой Группировка;

Ø суммируемое поле;не суммируемое поле.

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

Ø Групповые функции

Sum- Вычисляет сумму всех значений поля.

Avg-вычисляет среднее значение поля.

Min- Находит наименьшее значение поля.

Max- Находит наибольшее значение поля.

Count- Возвращает число записей, в которых значения данного поля не пустые.

StDev- Вычисляет среднеквадратичное отклонение для всех значений данного поля.

Var- Вычисляет статистическую дисперсию. Если в группе меньше 2 строк функция возвращает 0

Ø Замечание 1: Функция Count возвращает количество всех записей с непустыми значениями в поле (т. е. полей, не содержащих значения Null) .

Ø Замечание 2: Функции Min, Max, Count применимы ко всем типам полей; Sum, Avg, StDev, Var – только к числовым и денежным, а First, Last к текстовым.

32. Вычисление общих итогов в запросах. Примеры.

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

Пример: Вычислить количество заказанных заказов, среднее значение скидки, максимальное и минимальное значение стоимости услуг.

34.Перекрестный запрос. Назначение. Правила и способы создания

Перекрестные запросы

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

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

Создание перекрестного запроса.

Возможны 2 способа создания перекрестного запроса:

Ø Запрос ® Создать ® конструктор;

Ø выбрать таблицы, по которым будет создан перекрестный запрос;

Ø выбрать нужные поля;

Ø пункт меню Вид ® перекрестный или поле на панели инструментов – Вид запроса ® перекрестный;

Ø Заполняем строку Перекрестная таблица

Создание перекрестного запроса с помощью мастера

ü запрос ® создать ® перекрестный запрос

ü выбрать таблицу или запрос из которых будем выводить поля в запросе;

ü выбираем поле по которому необходимо провести итоговые вычисления и групповую функцию; на этом же шаге подтверждаем создание итоговых значений для каждой строки

ü задаем имя запроса; готово.

Замечание:

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

Таким образов в запросе появилась новая строка Перекрестная таблица, в которой нужно выбрать по крайней мере 3 поля:

Ø заголовки строк (Группировка);

Ø заголовки столбцов (Группировка);

Ø значения (групповая функция).

Результатом будет таблица:

заголовки строк: значения даты принятия заказа,

заголовки столбцов: названия городов

значения - количество заказов, заказанных клиентом из каждого города за каждый день.

Условия отбора в перекрестном запросе

Условия могут устанавливаться для следующих типов полей:

Ø для любого нового поля;

Ø для поля заголовки строк;

Ø для поля заголовки столбцов.

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

При создании запроса MsA по умолчанию создает запрос-выборку. Чтобы изменить тип запроса, необходимо воспол-ться меню конструктора запроса.

В окне базы данных запросы-действия имеют каждый свою пиктограмму и! (кнопка запуска).

Т.к. действия запросов, внос. изменения, необратимы , то следует придерж. след. последовательности действий:

создать запрос выборку;2.перейти в режим просмотра результир. таблицы и просмотреть записи, выбранные в запросе; 3.преобразовать запрос выборку в запрос действие; 4.выполнить запрос: кнопка!;5проверить внесенные изменения. Создание запроса для изменения (обновления) значений

Для создания такого запроса, следует пройти 2 этапа:

1.создать запрос на выборку и просмотреть данные, подлежащие изменению;

2.преобразовать запрос-выборку в запрос-обновление и выполнить.

Т.о. сначала создадим запрос-выборку:

Преобразуем запрос на выборку в запрос на обновление:

выберем команду Запрос ® обновление , в запрос будет добавлена строка Обновление.

в строке Обновление в поле Скидка введем 0,15.

на панели инструментов щелкнуть кнопку!

для завершения вып-ия запроса нужно ответить Да.

Запрос на создание таблицы

Построим запрос-выборку;

Выбрать в меню Запрос ® создание таблицы;

В поле Имя таблицы – новое имя таблицы

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

Вывод дат лучше отключить.

Кнопка! ® Да.

Создание запроса для удаления записей

Это наиболее опасный запрос!!!

Удаляющий запрос может удалять записи из нескольких таблиц одновременно.

Для этого нужно чтобы:

было определено отношение между таблицами;

включена опция Обеспечение целостности данных;

включена опция Каскадное удаление связанных записей.

  1. Необходимо построить запрос выборку;
  2. Запрос/удаление;

В таблице Заказы выбрать поле Дата принятия заказа;Для этого поля задайте критерий >=#1/01/08# and <#1.01.09#;Нужно проверить, что результирующая таблица содержит записи, относящиеся только к 2008 году;Режим конструктора;Кнопка!;Кнопка ДА. Записи будут удалены из таблиц.

38.Форма как объект БД. Наз-ие. Режимы просмотра. Способы проект-ия форм вACCESS

Формы являются типом объектов базы данных, который обычно используется для отображения данных в базе данных. Форму можно также использовать как кнопочную форму, открывающую другие формы или отчеты базы данных, а также как пользовательское диалоговое окно для ввода данных и выполнения действий, определяемых введенными данными. Для формы используются режим конструктора и режим формы. Форму можно создать с помощью мастера и конструктора. Мастер: выбор полей для отображения в форме, выбрать внешний вид формы (в один столбец, ленточная, табличная, выровненная, сводная таблица, сводная диаграмма), выбрать необходимый стиль. режиме формы (Режим формы. Окно, в котором форма выводится для отображения или ввода данных. Режим формы является основным режимом, в котором выполняется ввод или изменение табличных данных. В этом режиме можно также изменить макет формы.)

40-41.Режим Конструктора форм.Вид окна конструктора форм.Областиформы.Этапсозданияформы в Режиме Конструктора формы. Режим конструктора форм. При создании формы первоначально отображается только область данных. Чтобы добавить заголовок и примечания формы необходимо: Вид – Заголовок/примечание формы. Также форма может содержать верхний/нижний колонтитул.Заголовок данных. области данных (Раздел данных. Основной раздел формы или отчета. Этот раздел обычно содержит элементы управления, присоединенные к полям в источнике записей. Однако он может также содержать свободные элементы управления, такие как надписи, определяющие содержимое полей.)Выбрав на панели элементов элемент управления Поле, можно производить вычисления в выделенной области или добавлять данные следующим образом: Правая кнопка мыши – Свойства – Данные. Далее подставляем данные либо вводим выражение.

43.Элементы управления, их виды и назначение.

Панель элементов используется для размещения объектов в форме. Рассмотрим кнопки панели :

1.Выбор объектов(можно выделять любой элемент управления, разделять);2.Мастера(существуют мастера по созданию поля со списком, группы параметров, кнопки, диаграммы и подчин. формы);

3.Надпись: позволяет разместить в форме текст в дополнение к размещенному по умолчанию; 4.Группа переключателей: используется для размещения в группе флажков, переключателей или выключателе, представляющих набор альтернативных значений

Выключатель,Переключатель,Флажок испол-тся в кач-ве:1. отдельного элемента управления, связанного с логическим полем;2. свободного элемента управления, принимающего действия пользователя в специальном окне диалога;3. компонента группы параметров, в который отображаются значения для выбора.

Поле со списком: составной элемент управления, объединяющий поле и раскрывающийся список.

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

Кнопка: позволяет осуществить разнообразные действия в форме: поиск записи, форматирование отчета, установка/снятие фильтра и т.д.

Рисунок: осуществляет размещение рисунка, не являющегося объектом OLE.

Свободная рамка объекта: позволяет ввести свободный объект OLE, который остается неизменным при перемещении по записям.

Присоединенная рамка объекта: позволяет отобразить в форме объекты OLE. Предназначена для объектов, сохраненных в базовом источнике записей формы, поэтому при перемещении по записям в форме отображаются разные объекты.

Кроме этого еще: Разрыв страницы, Набор вкладок, Подчиненная форма/отчет, Линия, Прямоугольник, Другие элементы.

Загрузка...
Top