Перейти к содержимому

Для чего используют запрос с параметром

  • автор:

Для чего используют запрос с параметром

Запрос с параметром (параметрический запрос)

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

1. Откройте в режиме Конструктора окно запроса и добавьте в него таблицу. Создайте запрос, «перетащив» необходимые поля в бланк запроса и задав условие выбора.
2. В качестве условия введите параметр, заключенный в квадратные скобки (например, [Введите название] или [Выше какого роста?]).
3. Выберите команду Запрос — Параметры.
4. В появившемся окне Параметры запроса введите без квадратных скобок параметр (для точности ввода воспользуйтесь «быстрыми » клавишами копирования и вставки из буфера обмена) и укажите соответствующий ему тип данных. Нажмите OK.
5. Нажмите кнопку Запуск панели инструментов.
6. В появившемся окне укажите значение параметра.
7. Результат запроса будет содержать только те значения, которые удовлетворяют заданному значению параметра.

18.07.2010 20:46 Информатика Артем 30176 0

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

  • Запросы в Microsoft Access
  • Запрос на выборку Microsoft Access
  • Вычисляемые поля в запросах Access
  • Проектирование запроса Access
  • Окно запроса Access
  • Формирование запроса Access
  • Включение полей в запрос Access
  • Задание критериев Access
  • Сортировка в Access
  • Выполнение запроса Access

4.5 Запросы с параметрами

Запрос с параметрами − это запрос, при выполнении отображающий в собственном диалоговом окне приглашение ввести данные, например условие для возвращения записей или значение, которое требуется вставить в поле. Запросы с параметрами удобно использовать в качестве основы для форм и отчетов. Например, на основе запроса с параметрами можно создать месячный отчет о доходах. При печати данного отчета Microsoft Access выводит на экран приглашение ввести месяц, доходы за который должны быть приведены в отчете. После ввода месяца Microsoft Access выполняет печать соответствующего отчета. Создание запроса с параметрами 1 Создать запрос на выборку или перекрестный запрос и открыть его в режиме конструктора. 2 Для каждого поля, которое предполагается использовать как параметр, ввести в ячейку строки «Условие отбора» выражение с текстом приглашения, заключенным в квадратные скобки. Например, для поля, в котором отображаются фамилии студентов, ввести выражение [Введите фамилию студен- та:] . 3 Для просмотра результатов перейти в режим таблицы и ввести значения параметров. Если качестве параметров отбора нужно в указать верхнюю и нижнюю границы какого-либо значения, то следует ввести условие отбора в виде: 32

BETWEEN [Введите нижнюю границу] AND [Введите верхнюю границу] Например, для получения списка студентов, родившихся в определенный год, для поля, в котором отображаются даты рождения, можно ввести приглашения «Введите начальную дату:» и «Введите конечную дату:», чтобы задать границы диапазона значений: Between [Введите начальную дату:] And [Введите конечную дату:] Структура запроса и результат его работы представлены на рисунках 17 и 18. Рисунок 17 – Структура параметрического запроса «Список студентов» Рисунок 18 – Результат выполнения параметрического запроса Чтобы запросить у пользователя один или несколько знаков для поиска записей, которые начинаются с этих знаков или содержат их, создается запрос с параметрами, использующий оператор LIKE и подстановочный знак «*» (пример запроса приведен на рисунке 19).

Рисунок 19 – Структура и результат выполнения параметрического запроса Например, следующее выражение выполняет поиск слов, начинающихся с указанной буквы: LIKE [Введите первый символ для поиска:] & «*»

4.6 Практическая работа № 4

1 На основе таблицы «Преподаватели» создать с помощью мастера простой запрос на выборку, в котором должны отображаться фамилии, имена, отчества преподавателей и их должность. Данные запроса отсортировать по должностям по убыванию. Сохранить запрос под именем «Должности преподавателей». 2 Создать с помощью конструктора запрос «Оценки студентов», в котором выводятся все оценки студентов по всем дисциплинам. Запрос должен содержать поля: из таблицы «Студенты» поля «Фамилия», «Имя» и «Группа», из таблицы «Дисциплины» – поле «Название дисциплины», из таблицы «Оценки» – поле «Оценка». 3 Изменить запрос «Оценки студентов» так, чтобы выводились оценки студентов группы М-103 по дисциплине «Физика». Сохранить запрос под именем «Оценки студентов − физика». 4 Изменить запрос «Оценки студентов» так, чтобы выводились оценки «4» по дисциплине «Физика» или оценки «5» по дисциплине «Экономика». Сохра- нить запрос под именем «Оценки студентов − физика или экономика». 5 Создать запрос, выдающий список студентов, фамилия которых начинается с буквы «С». Сохранить запрос под именем «Студенты на С». 6 Создать параметрический запрос на выборку всех данных о студентах, чьи фамилии начинаются с первых букв (одной, двух, сколько нужно по контексту поиска), задаваемых в окне диалога. Сохранить запрос под именем «Студенты − параметрический». 34

7 Создать запрос «Студенты 1996 года», включив в него записи о студентах, родившихся в 1996 году. 8 Создать параметрический запрос «Студенты заданного года», включив в него записи о студентах, родившихся в году, заданном в окне диалога. 9 Изменить запрос «Оценки студентов», добавив группировки: по полю «Название дисциплины» – по возрастанию, по полю «Оценка» – по убыванию. Сохранить запрос под именем «Оценки студентов − сортировка». 10 Создать запрос «Список доцентов». В запросе поле «Должность» должно быть включено только для того, чтобы указать условие отбора, оно не должно выводиться на экран. 11 Изменить запрос «Оценки студентов» таким образом, чтобы в запросе отображались сведения об успеваемости студентов заданной группы по заданному предмету (номер группы и название дисциплины – параметры запроса, за- даваемые в диалоге). Сохранить запрос под именем «Оценки студентов − параметрический». 12 Создать запрос, в результате которого создастся выборка, отражающая средний балл по дисциплинам в группах. Сохранить запрос под именем «Средние оценки в группах». 13 Создать запрос, в результате которого для каждого студента подсчитывается количество сданных экзаменов и средний балл по результатам сдачи всех экзаменов. Сохранить запрос под именем «Оценки студентов − итоги». 14 Сконструировать запрос «Оценки студентов − группировка» с несколькими групповыми функциями: — вычисление числа студентов в группе, присутствовавших на экзамене, — среднего балла сессии по группе. Результаты запроса должны быть сгруппированы по полю «Группа». Дисциплина вводится как параметр запроса. 15 Создать перекрестный запрос о среднем балле в группах по предметам (рисунок 20). Сохранить запрос под именем «Средние оценки групп». Рисунок 20 – Примерный результат выполнения перекрестного запроса 16 Создать запрос «Оценки за данный месяц» с полями «Фамилия», «Название дисциплины», «Оценка» и «Дата сдачи». Для поля «Дата сдачи» в строке «Условия отбора» ввести выражение: Month ( [Дата сдачи]) = [Введите № месяца:]. 17 На основе таблиц «Студенты» и «Общежитие» построить запрос «Информационная карта студента» с полями: «ФИО», «Группа», «Дата рождения», «Адрес», «Пол». Поле «ФИО» должно содержать фамилию, имя и отчество студента, поле «Адрес» − сведения об общежитии и комнате. Список отсортировать по фамилиям.

Пособие для студентов Модуль 3

Учебно-методическое пособие содержит Модуль 3, состоящий из двух разделов:

  • Моделирование;
  • База данных.

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

Для проверки знаний в учебном пособии приведены вопросы для самоконтроля.

Составители: Глазова В.Ф., Панюкова Е.В.

© Тольяттинский государственный университет, 2009

Маршрутная карта изучения дисциплины по Модулю 3. 5

1. Современное состояние проблемы моделирования систем. 6

2. Принципы моделирования. 8

3. Классификация моделей. 8

4. Моделирование систем. 11

5. Математическое моделирование. 13

5.1. Математические схемы моделирования систем. 13

5.2. Непрерывно-детерминированные модели (D-схемы). 14

5.3. Дискретно-детерминированные модели (F-схемы). 15

5.4. Дискретно-стохастические модели (Р-схемы). 15

5.5. Непрерывно-стохастические модели (Q-схемы). 15

5.6. Сетевые модели (N-схемы). 15

5.7. Комбинированные модели (А-схемы). 15

6. Анализ результатов машинного моделирования. 15

6.1. Корреляционный анализ результатов моделирования. 16

6.2. Регрессионный анализ результатов моделирования. 16

6.3. Дисперсионный анализ результатов моделирования. 18

6.4. Вопросы для самоконтроля. 19

7. Методические указания для выполнения практического задания №1. «Построение простейших моделей». 20

Приложение 1. Варианты заданий. 20

8. Методические указания для выполнения практического задания №2. «Построение регрессионной модели» с использованием табличного процессора Microsoft Excel. 22

9. Методические указания для выполнения индивидуального задания №1. «Построение регрессионной модели» средствами языка программирования Turbo Pascal. 23

Приложение 2. Варианты заданий. 24

10. Основные понятия теории баз данных. 28

10.1. Базы данных и системы управления базами данных. Модели данных. 28

10.2. Основы проектирования реляционных баз данных. 31

10.3. Этапы проектирования реляционной базы данных. 34

10.4. Вопросы для самоконтроля. 37

11. Основы работы с СУБД Microsoft Access. 37

11.1. Объекты базы данных Microsoft Access. 37

11.2. Работа с таблицами. 40

11.3. Работа с формами. 44

11.4. Работа с запросами. Запросы на выборку. 48

11.5. Итоговые запросы и запросы на изменение данных. 54

11.6. Работа с отчетами. 58

11.7. Вопросы для самоконтроля. 59

12. Методические указания для выполнения практического задания №3. «Работа с таблицами и формами базы данных Microsoft Access». 60

13. Методические указания для выполнения практического задания №4. «Работа с запросами на выборку в базе данных Microsoft Access». 67

14. Методические указания для выполнения практического задания №5. «Работа с итоговыми запросами и запросами на изменение таблиц в базе данных Microsoft Access. Создание отчетов». 73

15. Методические указания для выполнения индивидуального задания №2. «Базы данных». 84

16. Вопросы для подготовки к защите индивидуального задания №2. 84

Использование параметров в запросах, формах и отчетах

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

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

В этой статье

  • Обзор
  • Использование параметров в запросах
  • Указание типов данных для параметра
  • Создание формы для ввода параметров
  • Создание формы для ввода параметров для отчета

Обзор

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

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

  • Дополнительные сведения о создании запроса на выборку см. в статье Создание простого запроса на выборку.
  • Дополнительные сведения о запросах в целом см. в статье Знакомство с запросами.
  • Дополнительные сведения о создании параметров в запросах см. в статье Использование параметров для ввода данных при выполнении запроса.
  • Дополнительные сведения о настройке условий в запросах см. в статье Примеры условий запроса.

Использование параметров в запросах

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

Добавление параметра в запрос

  1. Создайте запрос на выборку и откройте его в конструкторе.
  2. В строке Условия поля, для которого вы хотите применить параметр, введите в квадратных скобках текст, который должен отображаться в соответствующем диалоговом окне. Пример: [Дата начала] При выполнении запроса с параметрами этот текст отобразится в диалоговом окне без квадратных скобок. При запросе параметров также можно использовать выражения. Пример: Between [Дата начала]And[Дата окончания]

Примечание: Для каждого параметра выводится отдельное диалоговое окно. Во втором примере появляется два окна: одно для даты начала, второе — для даты окончания.

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

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

  1. Откройте запрос на объединение в режиме SQL.
  2. Добавьте предложение WHERE, содержащее каждое поле, для которого требуется ввести параметр. Если предложение WHERE уже существует, убедитесь в том, что поля, для которых нужно ввести параметры, уже есть в этом предложении; в противном случае добавьте их.
  3. Вместо условия в предложении WHERE используйте запрос параметра.

Указание типов данных для параметра

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

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

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

  1. Когда запрос открыт в конструкторе, на вкладке Конструктор в группе Показать или скрыть нажмите кнопку Параметры.
  2. В диалоговом окне Параметры запроса в столбце Параметр введите текст запроса на ввод значения для каждого параметра, для которого требуется указать тип данных. Убедитесь, что каждый из параметров соответствует запросу, который используется в строке Условие отбора в бланке запроса.
  3. В столбце Тип данных выберите тип данных для каждого параметра.

Создание формы для ввода параметров

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

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

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

Браузер не поддерживает видео.

Создание формы для ввода параметров для отчета

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

  • Шаг 1. Создайте форму для ввода значений
  • Шаг 2. Создайте блок кода, проверяющий, загружена ли форма параметров
  • Шаг 3. Создайте макрос, управляющий работой формы и отчета
  • Шаг 4. Добавьте на форму кнопки «ОК» и «Отмена»
  • Шаг 5. Используйте значения из формы в качестве условий запроса
  • Шаг 6. Добавьте макрокоманды в события отчета
  • Шаг 7. Проверьте форму в действии

Шаг 1. Создайте форму для ввода значений

  1. На вкладке Создание в группе Формы нажмите кнопку Конструктор форм.
  2. В режиме конструктора нажмите F4, чтобы открыть страницу свойств, и задайте свойства формы, как показано в таблице ниже.
Свойство Значение
Подпись Введите имя, которое будет отображаться в строке заголовка формы.
Режим по умолчанию Простая форма
Режим формы Да
Режим таблицы Нет
Режим сводной таблицы Нет
Режим сводной диаграммы Нет
Полосы прокрутки Отсутствуют
Область выделения Нет
Кнопки навигации Нет
Тип границы Окно диалога
Свойство Параметр
Имя Введите имя, описывающее параметр, например ДатаНачала.
Формат Выберите формат, который соответствует типу данных поля параметра. Например, для поля даты выберите вариант Полный формат даты.

Шаг 2. Создайте блок кода, проверяющий, загружена ли форма параметров

  1. На вкладке Создание в группе Макросы и код нажмите кнопку Модуль. В редакторе Visual Basic откроется новый модуль.
  2. Вставьте в редакторе следующий код:
Function IsLoaded(ByVal strFormName As String) As Boolean Dim oAccessObject As AccessObject Set oAccessObject = CurrentProject.AllForms(strFormName) If oAccessObject.IsLoaded Then If oAccessObject.CurrentView <> acCurViewDesign Then IsLoaded = True End If End If End Function

Шаг 3. Создайте макрос, управляющий работой формы и отчета

С помощью функций в макроса Access можно определить все необходимые действия, которые необходимо предпринять в одном макросе. Мы создадим четыре вуа макроса — «Открыть диалоговое окно», «Закрыть диалоговое окно», «ОК» и «Отмена» — для управления задачами, необходимыми для выполнения этой процедуры. С помощью приведенного ниже снимка экрана создайте новый макрос со следующими макросами и макросами. В данном примере наша форма параметров называется frmCriteria. Настройте макрос в соответствие с именем созданной ранее формы. Кроме того, для просмотра всех макроса необходимо нажать кнопку «Показать все действия» на вкладке «Конструктор».

Снимок экрана с макросом Access, содержащим четыре вложенных макроса и макрокоманды.

Сохраните и закройте макрос. Задайте для макроса имя, например Макрос диапазона дат.

Шаг 4. Добавьте на форму кнопки «ОК» и «Отмена»

  1. Снова откройте форму параметров, которую создали в режиме конструктора.
  2. На вкладке Конструктор в группе Элементы управления отмените выбор параметра Использовать мастера.
  3. На вкладке Конструктор в группе Элементы управления щелкните Кнопка.
  4. Расположите курсор под полями на форме и мышью создайте кнопку ОК.
  5. Если окно свойств не отображается, откройте его, нажав клавишу F4.
  6. Задайте для кнопки ОК свойства согласно приведенной ниже таблице.
Свойство Параметр
Имя ОК
Подпись ОК
По умолчанию Да
Нажатие кнопки Введите имя макроса, например Макрос диапазона дат.ОК.
Свойство Параметр
Имя Отмена
Подпись Отмена
Нажатие кнопки Введите имя макроса, например Макрос диапазона данных.Отмена.

Шаг 5. Используйте значения из формы в качестве условий запроса

  1. Откройте запрос, который создали в режиме конструктора.
  2. Введите условия для данных. Используйте объект Forms, имя формы и имя элемент управления:
    • Например, в базе данных Access (ACCDB или MDB) для формы frmCriteria можно задать следующее выражение, ссылающееся на элементы управления «Дата начала» и «Дата окончания» в запросе: Between [Формы]![frmCriteria]![Дата начала] And [Формы]![frmCriteria]![Дата окончания]

Шаг 6. Добавьте макрокоманды в события отчета

  1. Откройте нужный отчет в режиме конструктора.
  2. Если окно свойств не отображается, откройте его, нажав клавишу F4.
  3. Убедитесь, что для свойства Источник записей в отчете используется запрос с параметрами, который мы создали.
  4. Задайте два дополнительных свойства отчета, как показано в таблице ниже.
Свойство Значение
Открытие Введите имя макроса, например Макрос диапазона дат.Открыть диалоговое окно.
Закрытие Введите имя макроса, например Макрос диапазона дат.Закрыть диалоговое окно.

Шаг 7. Проверьте форму в действии

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

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

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

https://kodirovanie.vyvod-iz-zapoya-na-domu-moskva-snp.ru/