Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Создание запросов с помощью мастерaСтр 1 из 6Следующая ⇒
Создание запросов с помощью мастерa Мастер создания запросов представляет собой специальный инструмент Access 2002, с помощью которого пользователь, отвечая на вопросы в появляющихся диалоговых окнах, может построить простой запрос. Мастер – это четко регламентированная процедура создания простых запросов по шагам. Исходными данными для примеров создания запросов, рассматриваемых в данной работе, является структура данных, использованная в занятиях 5 и 6. Создание простого запроса на основе одной таблицы Для создания запроса с помощью Мастера необходимо: 1. Перейти на вкладку «Запросы» главного окна базы данных:
2. Выполнить команду «Создание запроса с помощью мастера» для открытия диалога «Создание простых запросов». 3. В поле «Таблицы и запросы» выбрать таблицу или другой запрос[1], используемый для создания текущего запроса. Предположим, нам необходимо получить список поставщиков и данные о них. Тогда в качестве исходной таблицы необходимо выбрать таблицу «Поставщик» как это показано на следующем рисунке:
4. Выбрать поля таблицы, которые будут использоваться в запросе. Для этого необходимо перенести нужные поля из списка «Доступные поля» в список «Выбранные поля»: - выделить нужное поле в списке доступных полей; - нажать кнопку. 5. Выполнить эту последовательность действий для всех полей, используемых в запросе («Наименование поставщика» и «Город»).
6. Нажать «Далее» для продолжения работы мастера. 7. Ввести имя для создаваемого запроса. В нашем примере это будет «ЗапросСписокПоставщиков». Имя запроса – буквенно-цифровая комбинация, уникальная в пределах всей базы данных. По имени запроса происходит обращение к запросу и запуск его на выполнение. 8. Нажать « Готово» для просмотра результатов запроса. На следующем рисунке показаны результаты выполнения запроса: Текст на языке SQL, созданный мастером, можно посмотреть, выполнив команду Вид ® Режим SQL или нажав кнопку. Здесь текст SQL-запроса можно откорректировать, пользуясь конструкциями языка SQL и практическими приемами, рассмотренными в начале работы. Для обратного переключения к просмотру данных выполните команду Вид ® Режим таблицы. После закрытия запроса можно увидеть, что в списке запросов на вкладке « Запросы» главного окна базы данных появится новый объект, созданный при помощи мастера SQL-запрос «ЗапросСписокПоставщиков».
Создание итогового запроса Итоговый запрос составляется на основе одной и более таблиц, при этом проводится группировка и расчет итогов по каждой группе записей. Предположим, необходимо получить информацию о том, на какую сумму поступили товары от каждого поставщика. Исходная информация для решения этой задачи получена ранее с помощью запроса «СписокОперацийПоступления». Выполним следующую последовательность действий: 1. Перейти на вкладку « Запросы» главного окна базы данных. 2. Выполнить команду « Создание запроса с помощью мастера». 3. В поле « Таблицы и запросы» выбрать запрос «СписокОперацийПоступления», как показано на следующем рисунке:
4. Перенести поля «НаименованиеПоставщика» и «Сумма» в список выбранных полей с помощью кнопки .
5. Нажать « Далее». 6. Выбрать итоговый тип запроса:
7. нажать кнопку « Итоги» для определения вида итогов; 8. установить вид итогов «SUM». Это означает, что для каждой группы записей будет подсчитываться сумма значений по каждому полю:
Как видно из рисунка, мастер также позволяет создавать запросы с расчетом среднего (Аvg), минимального (Min) и максимального (Max) значений по группе записей, а также числа записей в группе. 9. Нажать « ОК» для выхода из окна диалога « Итоги». 10. Нажать « Далее» для перехода к следующему окну диалога. 11. Ввести название для запроса «ПоставленоНаСумму», как показано на следующем рисунке:
12. Нажать кнопку « Готово» для просмотра результатов запроса.
Текст сгенерированного мастером запроса можно просмотреть,
Если необходимо получить данные только за какой-либо период Предположим, необходимо получить информацию о количестве и стоимости поставленного товара. Для решения этой задачи необходимо создать итоговый запрос с группировкой по полям «НаименованиеТовара», «ЕдиницаИзмерения» и расчетом сумм по полям «Количество» и «Сумма». Для этого выполним следующую последовательность действий: 1. Перейти на вкладку « Запросы» главного окна базы данных; 2. Выполнить команду « Создание запроса с помощью мастера». 3. В поле « Таблицы и запросы» выбрать запрос «СписокОперацийПоступления». 4. Перенести поля «НаименованиеТовара», «ЕдиницаИзмерения», «Количество» и «Сумма» из списка « Доступные поля» в список « Выбранные поля» как показано на следующем рисунке.
5. Нажать « Далее». 6. Выбрать «Итоговый» тип запроса. 7. Нажать кнопку « Итоги». 8. Выбрать тип итогов с расчетом суммы по полям «Количество» и «Сумма», как показано на рисунке:
9. Нажать « OК» для выхода из диалога « Итоги». 10. Нажать « Далее». 11. Ввести имя запроса «ПоставленныеТовары». 12. Нажать « Готово» для просмотра результатов запроса.
Просмотрим текст сгенерированного мастером SQL-запроса, выполнив команду Вид ® Режим SQL.
Создание простого запроса Предположим, необходимо получить список товаров со всей информацией о них. При этом наименования товаров должны быть отсортированы в алфавитном порядке по возрастанию. Создадим такой запрос при помощи конструктора. Для этого необходимо выполнить следующие действия. 1. Перейти на вкладку « Запросы» главного окна базы данных. 2. Выполнить команду Создание запроса с помощью конструктора. Так как создается новый запрос, то сразу будет открыт диалог добавления источников данных в запрос. В качестве источников данных могут быть использованы как таблицы базы данных, так и ранее созданные запросы к данным. 3. Выделить в списке таблицу «Товар» и нажать кнопку « Добавить ».
Удалить и добавить таблицу из запроса можно будет через контекстное меню. 4. Нажать кнопку « Закрыть», т.к. список товаров создается только на основе таблицы «Товар» и больше никакие таблицы (т.е. источники данных) в запросе не требуются. Окно конструктора после добавления таблицы «Товар» будет выглядеть следующим образом:
Источник данных – таблица или запрос, добавленные в рабочую область конструктора запросов. Рабочая область конструктора – область окна конструктора запросов, где отображаются источники данных (таблицы и запросы) со списками входящих полей, а также связи между источниками данных. Список полей любого источника начинается с символа звездочки «*», использование которого в тексте запроса означает, что в результат выполнения запроса должны быть выведены все поля данной таблицы или запроса. Окно свойств предназначено для определения полей, выводимых 5. Добавить в окно свойств запроса поля «НаименованиеТовара» Для этого необходимо либо последовательно перетащить поля в окно свойств, либо произвести двойной щелчок на каждом поле. В результате окно конструктора должно выглядеть так:
6. Определить сортировку данных по возрастанию для полей
7. Выполнить команду Файл ® Сохранить или нажать кнопку . 8. Ввести имя запроса «СписокТоваров».
9. Нажать « OK» для сохранения запроса.
Текст SQL-запроса, сгенерированный конструктором запросов, можно просмотреть, выполнив команду Вид ® Режим SQL.
Вернуться в режим конструктора можно выполнив команду Вид ® Конструктор. Просмотрим результат выполнения запроса. Для этого необходимо выполнить команду Вид ® Режим таблицы.
Как видно из рисунка, в результате выполнения запроса «СписокТоваров» была получена таблица со списком товаров, отсортированная по полю «НаименованиеТовара» по возрастанию в алфавитном порядке. Построим простой запрос с отбором записей по какому-либо условию. Предположим, необходимо получить не просто список поставщиков товаров, а список поставщиков из Москвы. Выполним следующую последовательность действий: 1. Перейти на вкладку «Запросы» главного окна базы данных. 2. Выполнить команду «Создание запроса с помощью конструктора». 3. Выделить таблицу «Поставщик» в списке таблиц. 4. Нажать кнопку «Добавить». 5. Нажать кнопку «Закрыть». В результате получим окно конструктора запросов, которое будет выглядеть следующим образом:
6. Добавить поля «НаименованиеПоставщика» и «Город» в окно свойств запроса. Напомним, что для этого необходимо либо перетащить эти поля в окно свойств, либо произвести двойной щелчок мышью на каждом поле в списке полей. В результате окно конструктора будет таким:
7. В поле «Условие отбора» необходимо ввести текст «=" Москва" », как показано на следующем рисунке:
8. Установить сортировку по возрастанию в поле «НаименованиеПоставщика» и снять флажок « Выводить на экран» для поля «Город». В результате получим:
9. Выполнить команду Файл ® Сохранить. 10. Ввести в качестве имени запроса текст «СписокПоставщиковИзМосквы».
11. Нажать « ОК». Просмотрим текст сгенерированного конструктором SQL-запроса ( Вид ® Режим SQL ).
Просмотрим результаты запроса, выполнив команду Вид ® Режим таблицы:
Пример 1. Предположим, необходимо в результате выполнения запроса получить следующую таблицу:
Графа Поступление формируется из поля «Количество» таблицы «Поступление» и «ПоступлениеСостав». Графа Отпуск формируется из поля «Количество» таблицы Графа Возврат формируется из поля «Количество» таблицы «Возврат» и «ВозвратСостав». Графа Списание формируется из поля «Количество» таблицы «Списание» и «СписаниеСостав». Графа ДатаОперации формируется из полей Поступление.ДатаПоступления, Отпуск.ДатаОтпуска, Возврат.ДатаВозврата, Списание.ДатаСписания. Графа КодТовара формируется из полей Поступление.КодТовара, Отпуск.КодТовара, Возврат. КодТовара, Списание. КодТовара. Опуская процесс создания детальных запросов[5], предположим, что детальные запросы для граф «Поступление», «Отпуск», «Возврат» и «Списание» уже созданы.
Приведем результаты выполнения запросов. Результат выполнения запроса « ОперацииПоступления » представлен на следующем рисунке:
Результат выполнения запроса « ОперацииОтпуска » представлен на следующем рисунке:
Результат выполнения запроса « ОперацииВозврата » представлен на следующем рисунке:
Результат выполнения запроса « ОперацииСписания » представлен на следующем рисунке: Решение 1. Создадим запрос, приводящий запрос «ОперацииПоступления» к структуре таблицы объединения. Для этого произведем следующие действия. 1.1. Выполним команду Создание запроса с помощью конструктора. 1.2. Добавим в конструктор запрос «ОперацииПоступления». 1.3. Перенесем поля «ДатаПоступления», «КодТовара», «ЕдиницаИзмерения», «Количество» в область свойств запроса. Получим:
1.4. Переименуем поле «ДатаПоступления» в «ДатаОперации».
1.5. Переименуем поле «Количество» в «Поступление».
1.6. Добавим в запрос виртуальное поле «Отпуск», установив для него нулевое значение[6]. Для этого необходимо: - перейти в свободную графу области свойств запроса; - в строке Поле ввести текст «Отпуск: 0»;
1.7. Добавим в запрос виртуальное поле «Возврат», установив для него нулевое значение. Для этого необходимо: - перейти в свободную графу области свойств запроса; - в строке Поле ввести текст «Возврат: 0». 1.8. Добавим в запрос виртуальное поле «Списание», установив для него нулевое значение. Для этого необходимо: - перейти в свободную графу области свойств запроса; - в строке поля ввести текст «Списание: 0». В результате окно конструктора будет выглядеть так:
1.9. Выполним команду Файл ® Сохранить и установим для нового запроса имя «Форма1_ОперацииПоступления». Просмотрим результат выполнения запроса, выполнив команду Вид ® Режим таблицы. Получим:
Как видно из рисунка, полученная структура запроса « Форма1_ОперацииПоступления » по составу полей полностью соответствует таблице, которую необходимо получить в результате объединения. Приведем к такой же структуре запросы «ОперацииОтпуска», «ОперацииВозврата», «ОперацииСписания». 2. Приведем запрос «ОперацииОтпуска» к структуре, аналогичной таблице объединения. Приведение запроса «ОперацииОтпуска» к единой структуре полностью идентично, процессу рассмотренному в п.1. Отличие заключается в том, что поле «Количество» переименовывается в поле «Отпуск», а значения полей «Поступление», «Возврат» и «Списание» устанавливаются равными нулевым значениям. В результате мы получим запрос «Форма1 _ ОперацииОтпуска». Выполнив этот запрос, получим:
3. Приведем запрос «ОперацииВозврата» к структуре, аналогичной таблице объединения. Приведение запроса «ОперацииВозврата» к единой структуре полностью идентично процессу, рассмотренному в п.1. Отличие заключается в том, что поле «Количество» переименовывается в поле «Возврат», а значения полей «Поступление», «Отпуск» и «Списание» устанавливаются равными нулевым значениям. В результате мы получим запрос «Форма1_ОперацииВозврата». 4. Приведем запрос «ОперацииСписания» к структуре, аналогичной таблице объединения. Приведение запроса «ОперацииСписания» к единой структуре полностью идентично процессу, рассмотренному в п.1. Отличие заключается в том, что поле «Количество» переименовывается в поле «Списание», а значения полей «Поступление», «Отпуск» и Возврат» устанавливаются равными нулевым значениям. В результате мы получим запрос «Форма1_ОперацииСписания». 5. Создадим запрос, объединяющий результаты запросов «Форма1_ОперацииПоступления», «Форма1_ОперацииОтпуска», «Форма1_ ОперацииВозврата», «Форма1_ОперацииСписания» в единую таблицу. Для этого произведем следующие действия. 5.1. Выполним команду Создание запроса с помощью конструктора. 5.2. Выполним команду Вид ® Режим SQL. 5.3. Наберем текст запроса на языке SQL, как это показано на рисунке:
5.4. Выполним команду Файл ® Сохранить и присвоим запросу имя «Форма1». Просмотрим результаты запроса, выполнив команду Вид ® Режим таблицы.
ПРИМЕЧАНИЕ: Чтобы вместо поля «КодТовара» получить поле «НаименованиеТовара», как уже известно из построения детального запроса, необходимо: - создать новый запрос; - перенести туда запрос «Форма1» и таблицу «Товар»; - установить связь между таблицей «Товар» и запросом «Форма1» по полю «КодТовара» (параметры объединения – INNER JOIN); - перенести в результирующую таблицу (область свойств запроса) все поля - из таблицы «Товар» перенести поле «НаименованиеТовара» в результирующую таблицу; - сохранить запрос. Как видно из таблицы, в результате выполнения шагов 1-5 данные нескольких таблиц были собраны в одну. Теперь можно выполнять с этими данными любые другие операции, такие как отбор, группировка и расчет вычисляемых полей. Например, рассчитать остаток товара на складе на определенную дату. Для этого необходимо: 1. Отобрать данные из запроса «Форма1» за период, т.е. по условию: ДатаОперации < [ДатаРасчетаОстатка]
1.1. Выполнить команду Создание запроса с помощью конструктора; 1.2. Добавить в конструктор запрос «Форма1»; 1.3. Перенести все поля в область свойств запроса – таблицу результатов; 1.4. В графе ДатаОперации в строке Условие отбора ввести текст условия: < [ДатаРасчетаОстатка]. В результате получим:
1.5. выполнить команду Файл ® Сохранить и в качестве имени для этого запроса текст: «ОстатокТоваровНаДату1». 2. На основе запроса, полученного в п.1. («ОстатокТовараНаДату1»), провести группировку по полю «КодТовара» с расчетом сумм по полям «Поступление», «Отпуск», «Возврат», «Списание».
2.1. Выполнить команду «Создание запроса c помощью конструктора». 2.2. Добавить в конструктор запрос «ОстатокТоваровНаДату1». 2.3. Перенести в таблицу результатов запроса поля «КодТовара», «Поступление», «Отпуск», «Возврат», «Списание». 2.4. Выполнить команду Вид ® Групповые операции. 2.5. Установить в графах «Поступиление», «Отпуск», «Возврат», «Остаток» в строке «Группировка» выражение «SUM», для расчета сумма по указанным полям. В результате окно конструктора будет выглядеть так:
Зная, что Access автоматически переименует поля, по которым рассчитывается сумма, установим имена для полей запроса. 2.6. В графу «Поступление» в строку «Поле: » введем текст «Поступление: Поступление». 2.7. В графу «Отпуск» в строку « Поле: » введем текст «Отпуск: 2.8. В графу «Возврат » в строку «Поле: » введем текст «Возврат: Возврат». 2.8. В графу «Списание » в строку «Поле: » введем текст «Списание: Списание».
2.9. Выполним команду Файл ® Сохранить и введем имя запроса «ОстатокТоваровНаДату2».
3. На основе запроса, полученного в п.2, провести создание вычисляемого поля Остаток по формуле: Остаток = Поступление – Отпуск + Возврат – Списание
3.1. Выполнить команду Создание запроса с помощью конструктора. 3.2. Добавить в конструктор запрос «ОстатокТоваровНаДату2». 3.3. Перенести все поля запроса в таблицу результатов запроса. 3.4. Установить курсор в свободную колонку таблицы результатов запроса, как это показано на рисунке:
3.6. Нажать Shift + F2 для перехода в диалоговую область ввода. 3.7. В области ввода ввести текст расчета значения вычисляемого поля «Остаток», как это показано на следующем рисунке:
3.8. Нажать « OК». 3.9. Выполнить команду Файл ® Сохранить и ввести имя этого запроса: «ОстатокТоваровНаДату3». Просмотрим результаты запроса, выполнив команду Вид ® Режим таблицы. В качестве начальной даты введем «29.02.2004». Получим:
Просмотрим текст запроса, сгенерированный конструктором, выполнив команду Вид ® Режим SQL. Получим:
Как видно из рисунка, вычисляемое поле представляет собой арифметическое выражение, состоящее из имен полей (в его состав также могут входить цифры и функции SQL). Для большей наглядности полученных результатов в запросе «ОстатокТоваровНаДату3» результаты сведем к следующей таблице:
4. На основе запроса «ОстатокТоваровНаДату3» получим таблицу указанной выше формы. Для этого необходимо: 4.1. Выполнить команду «Создание запроса с помощью конструктора». 4.2. Добавить в конструктор запрос «ОстатокТоваровНаДату3» и таблицу «Товар». Связь между таблицей и запросом по полю «КодТовара» установится автоматически, т.к. правильно была определена схема данных. Если связь не установилась, нужно установить ее вручную, перетащив поле «КодТовара» из таблицы «Товар» на поле «КодТовара» в запросе «ОстатокТоваровНаДату3». 4.3. Добавить поле «НаименованиеТовара» из таблицы «Товар» в таблицу результатов запроса. 4.4. Добавить поле «Остаток» из запроса «ОстатокТоваровНаДату3». 4.5. В графе НаименованиеТовара в строке Сортировка установить значение по возрастанию. В результате выполненных действий 4.1- 4.5 получим:
4.6. Выполнить команду Файл ® Сохранить и ввести текст названия запроса «ОстатокТоваровНаДату4».
Просмотрим результаты запроса, выполнив команду Вид ® Режим таблицы. В качестве даты расчета остатков введем «29.02.2004». Получим:
Запросы на добавление Предположим, необходимо создать запрос, который добавляет в таблицу «Товар» сведения о товаре, введенные пользователем. Структура таблицы «Товар» нам известна – она состоит из полей «НаименованиеТовара» и «ЕдиницаИзмерения» (значение поля «КодТовара» генерируется автоматически). Для того, чтобы создать запрос на добавление записи в таблицу «Товары», необходимо выполнить следующую последовательность действий: 1. Выполнить команду Создание запроса с помощью конструктора. 2. Перейти в режим ввода текста запроса на языке SQL, выполнив команду Вид ® Режим SQL. 3. Набрать текст SQL-запроса, как показано на рисунке:
4. Выполнить команду Файл ® Сохранить для сохранения запроса и ввести имя запроса «ДобавлениеТовара», нажать « OК» и закрыть окно конструктора. После этого в списке запросов появится новый запрос –«ДобавлениеТовара»:
Для того, чтобы увидеть результат запроса «Добавление товара» необходимо выполнить следующую последовательность действий: 1. Выполнить запрос «Добавление товара»: произведите на нем двойной щелчок мышью.
В открывшемся окне ответить « Да», разрешив тем самым запуск запроса на изменение данных. Т.к. запрос является параметрическим, то система сначала запросит значение параметра « НаименованиеТовара». 2. Ввести в качестве наименования товара текст «Водка Золотой рай 0, 5л» как показано на рисунке:
3. Нажать « OK». 4. Ввести в качестве единицы измерения текст «бут», как показано на рисунке: 5. Нажать « OK». 6. Подтвердить добавление записи в следующем диалоге
7. Открыть таблицу «Товар» для просмотра результатов выполнения запроса. 8. Выполнить команду Сервис ® Удалить фильтр для снятия фильтра и обновления набора данных. Получим:
Как видно из рисунка, в результате выполнения запроса в таблицу «Товар» была добавлена новая запись. Добавление данных в таблицу на основе запроса было подробно рассмотрено выше в части «Создание запроса на сохранение данных запроса во временной таблице».
Запросы на изменение Запросы на изменение используются для изменения одной и более записей таблицы. Рассмотрим пример с изменением одной записи. Пример 1 Предположим, для товара «Сотовый телефон» требуется изменить название на «Сотовый телефон Nokia» в таблице «Товар». Для выполнения этой операции с помощью запроса SQL необходимо выполнить следующие действия: 1. Выполнить команду «Создание запроса с помощью конструктора». 2. Перейти в режим ввода текста на языке SQL, выполнив команду Вид ® Режим SQL. 3. Ввести текст SQL-запроса, как показано на следующем рисунке:
4. Выполнить команду Файл ® Сохранить и установить для нового запроса имя «ИзменениеНаименованияТелефона». Выполним созданный запрос командой Запрос ® Запуск. Откроем таблицу «Товар»:
Аналогичным образом можно изменить при помощи запроса любое другое поле любой таблицы. Пример 2 Предположим, необходимо исключить какой-либо товар из дальнейшего использования в запросах или формах ввода данных и отчетов. Здесь возможны два случая: 1) если по данному товару не проводилось никаких операций, то нужно открыть таблицу «Товар» и удалить запись с наименованием данного товара; 2) гораздо чаще встречается ситуация, когда по товару было много операций (закупка, продажа, возврат, списание, перемещение и пр.), и информация об этих операциях хранится в базе данных. Тогда, если в базе данных правильно была создана схема данных, в которой были правильно определены связи и механизм поддержки целостности базы данных, удалить эту запись не получится, т.к. если удалить эту запись, нужно удалять и все операции, связанные с данным товаром. Если удалить операции, то база данных перестанет отражать реальное состояние бизнес-процессов: будут неправильно рассчитываться остатки, итоги, формироваться неверные отчеты. Выход заключается в добавлении в таблицу специального поля, которое будет представлять собой отметку об удалении. Фактически, запись о товаре из справочника удаляться не будет. Пользователи, запрашивающие список товаров, будут обращаться не к таблице, а к запросу, в котором используемые записи справочника уже отобраны. Рассмотрим второй случай на конкретном примере. Пример 3 Предположим, необходимо создать запрос, помечающий конкретную запись в таблице «Товары» как удаленную. При этом, запись об этом товаре больше не должна использоваться в других запросах. Решение 1. Добавить в таблицу «Товар» поле «ПометкаНаУдаление» как показано на следующем рисунке:
2. Создать запрос на установление пометки на удаление в таблице «Товар». 2.1. Выполнить команду Создание запроса с помощью конструктора. 2.2. Выполнить команду Вид ® Режим SQL для перехода к вводу текста запроса на языке SQL. 2.3. Ввести текст SQL-запроса, как это показано на рисунке:
2.4. Сохранить запрос, выполнив команду Файл ® Сохранить и
Проследим работу этого запроса. 1. Выполним команду Запрос ® Запуск для запуска запроса на 2. Ответим Да в диалоге подтверждения выполнения запроса на 3. Введем наименование товара «Телевизор», помечаемого как удаленный. 4. Нажмем « OК ». Запрос выполнен. Просмотрим его результат. Для этого необходимо открыть таблицу «Товар»:
Теперь, для того, чтобы работать с актуальным списком товаров 1. Выполним команду Создание запроса с помощью конструктора. 2. Добавим таблицу «Товары» в окно конструктора. 3. Перенести все поля в область результатов запроса. 4. В графу ПометкаНаУдаление, в строку « Условие отбора» введем текст «=Ложь». В строке вывод на экран снимем флажок « Вывод на экран», как это показано на следующем рисунке:
5. Выполним команду Файл ® Сохранить и введем имя запроса «СписокТоваровАктуальный».
Выполнив этот запрос ( Вид ® Режим таблицы ), можно увидеть, что помеченных на удаление (с помощью запроса «ПометкаТовараНаУдаление») товаров нет в списке. Это видно на следующем рисунке:
Теперь запрос «СписокТоваровАктуальный» нужно использовать во всех запросах вместо прямого обращения к таблице «Товары». Достаточно часто встречается задача, когда нужно изменить сразу несколько записей таблицы. Например, увеличить цены на 25% или изменить группу товаров у нескольких товаров. Рассмотрим подобный пример.
Пример 1 Предположим, необходимо создать запрос, который бы изменял цены на товары в таблице «Товар» на определенный процент. Например, необходимо увеличить все цены на 25%. Исходная таблица «Товар» представлена на следующем рисунке:
Решение Создадим SQL-запрос, изменяющий цены на определенный процент. Для этого необходимо. 1. Выполнить команду Создание запроса с помощью конструктора. 2. Выполнить команду Вид ® Режим SQL. 3. Ввести текст запроса на языке SQL как это показано на рисунке:
4. Выполнить команду Файл ® Сохранить и ввести имя для нового запроса «ИзменениеЦенНаПроцент».
Проследим, как работает этот запрос. Выше дана таблица с исходными ценами на товары. Выполним запрос «ИзменениеЦенНаПроцент». Для этого необходимо: 1. Выполнить команду Запрос ® Запуск. 2. Ввести в качестве параметра «Процент» число 25. Это означает, что цены будут увеличены на 25%. 3. Ответить Да на запрос подтверждения изменения записей. 4. Открыть таблицу «Товар» для просмотра сделанных в ней изменений. Результат работы запроса представлен на следующем рисунке:
Как видно из таблицы, цены на товары действительно были увеличены на 25%. Если указать параметр «Процент» с минусом, то цены будут уменьшены на указанное число процентов.
1. Изучить теоретический материал, разбирая все представленные 2. Создать базу данных Access 2002. 3. Создать таблицы, связи между ними, согласно варианту задания. 4. Заполнить таблицы данными, приведенными в варианте задания. 5. На основе задания определить структуру результирующего отношения (состав полей таблицы, получаемой в результате выполнения 6. Определить источники данных для создания результирующего отношения. 7. Определить последовательность действий, необходимых для получения результирующего отношения – последовательность операций по извлечению данных из таблиц-источников и их последующей обработке. 8. Создать запросы в Access 2002, реализующие определенную в п. 6 последовательность действий. 9. Проверить правильность решения задачи путем запуска запросов и проверки результатов их выполнения.
Популярное:
|
Последнее изменение этой страницы: 2016-04-11; Просмотров: 1608; Нарушение авторского права страницы