- ID: 41873
- Название работы: MS Access 2007: Создание запросов
- Категория: Лабораторная работа
- Предметная область: Информатика, кибернетика и программирование
Описание: Для вывода на экран БЛАНКА ЗАПРОСА необходимо: вкладка Создание группа команд Другие Конструктор запросов; в появившемся диалоговом окне Добавление таблицы выделите удерживая нажатой левую кнопку мыши все таблицы; щелкните по кнопкам Добавить и Закрыть; на экран будет выведено окно Конструктора запросов. В нижней панели пустой бланк запроса. Назначение строк бланка запроса: Поле Указываются имена полей участвующих в запросе Имя таблицы Автоматически выводятся имена таблиц соответствующих выбранным полям Групповая операция…
- Язык: Русский
- Дата добавления: 2013-10-26
- Размер файла: 351.77 KB
- Работу скачали: 182 чел.
- Лабораторная работа №4_часть 1
- MS Access 2007: Создание запросов
- Запрос — это требование на отбор данных, хранящихся в таблицах, или требование на выполнение определенных действий с данными. QBE-запросы (QBE – Query By Example – запросы по образцу) это:
- запрос на выборку;
- запрос на создание таблицы;
- запросы на обновление, добавление, удаление записей;
- запрос с параметрами;
- перекрестный запрос.
Для вывода на экран БЛАНКА ЗАПРОСА необходимо:
- вкладка Создание — группа команд Другие – Конструктор запросов;
- в появившемся диалоговом окне Добавление таблицы выделите (удерживая нажатой левую кнопку мыши) все таблицы;
- щелкните по кнопкам Добавить и Закрыть;
- на экран будет выведено окно Конструктора запросов. На верхней панели Конструктора запросов отображены таблицы базы данных с установленными связями. В нижней панели – пустой бланк запроса.
Назначение строк бланка запроса:
Поле | Указываются имена полей, участвующих в запросе |
Имя таблицы | Автоматически выводятся имена таблиц, соответствующих выбранным полям |
Групповая операция | Появляется после нажатия кнопки . Для объединения записей из связанных таблиц в группы (чтобы в результирующей таблице запроса не было повторяющихся записей) |
Сортировка | Вывод инструкций сортировки записей |
Вывод на экран | Определяет, будет ли отражено поле в результирующей таблице |
Условие отбора | Содержит первое условие, ограничивающее набор записей |
Или | Другие условия на ограничения набора записей |
Шаблоны, используемые при формировании условий отбора в запросах:
Символ | Использование | Пример |
* | Соответствует любому количеству любых символов, и может быть использован в любом месте текстовой строки | ст* — находит стол, стул, стакан и т.д. *ка — находит лампочка, папка, краска и т.д. |
? | Соответствует любому одиночному символу | л?па — находит лапа, липа и лупа и т.д. 224-??-45 — находит 224-58-45, 224-15-45 и т.д. |
- Создание запросов на выборку
Для формирования запроса необходимо заполнить бланк запроса (вывод на экран бланка запроса см. выше).
В строку Поле выводятся нужные для запроса поля из таблиц. Чтобы поле из таблицы, расположенной на верхней панели Конструктора запросов перенести в строку Поле бланка запроса, необходимо выполнить двойной щелчок мышью по нужному полю в таблице.
- Строка Имя таблицы заполняется автоматически.
- В строку Условие отбора (в соответствующее поле) вводятся критерии отбора записей.
- Задания.
- Составьте запрос на получение сведений о туристах (Фамилия, Адрес, Телефон, № путевки), выезжавших в Польшу в 2003 году (для указания даты используйте шаблон).
Пример выполнения запроса:
- Вкладка Создание – группа команд Другие – Конструктор запросов – выделите все таблицы – щелкните по кнопкам Добавить, Закрыть.
На экране появится окно Конструктора запросов с пустым бланком запроса.
Формируем бланк запроса:
- Из таблиц, расположенных вверху окна, двойным щелчком мыши переносим в строку Поле: из таблицы Туристы — Фамилию, Адрес_внутри_города, Телефон; из таблицы Путевки – Номер путевки, Дата заезда; из таблицы Страны мира – Название страны (при этом заполнение строки Имя таблицы в бланке запроса будет проходить автоматически).
- Для поля Название страны щелкните мышью в строке Условие отбора бланка запроса и введите с клавиатуры Польша.
- Для поля ДатаЗаезда щелкните мышью в строке Условие отбора бланка запроса и введите шаблон *.*.2003.
Сформированный бланк запроса будет выглядеть следующим образом:
- Запустите запрос на выполнение: вкладка Конструктор – группа команд Результаты – Выполнить
.
- Просмотрите результат выполнения запроса.
- Щёлкните правой кнопкой мыши по корешку Запрос1. Выберите Сохранить и в появившемся диалоговом окне Сохранение введите Польша-2003. Закройте запрос.
-
Составьте запрос на получение сведений о путевках (№ путевки, Дата заезда, Цена, Название страны), реализованных турагентством «Нева» в 2002 году (для указания даты используйте шаблон).
- Результат выполнения запроса будет следующим:
- Уберите из результата выполнения запроса поле Турагентство.
- Для этого:
- вернитесь в бланк запроса, щёлкнув на вкладке Главная – в группе команд Режим — по кнопке Режимы ;
-
в строке бланка Вывод на экран снимите флажок (удалите щелчком галочку) в столбце поля Турагентство.
-
Бланк запроса будет выглядеть следующим образом:
- Запустите запрос на выполнение: вкладка Конструктор – группа команд Результаты – Выполнить .
- Просмотрите результат выполнения запроса – поля Турагентство в результирующей таблице нет.
В динамической таблице, являющейся результатом выполнения запроса, есть повторяющиеся строки (Италия, 15.07.2002). Для удаления из результата выполнения запроса повторяющихся записей:
- вернитесь в бланк запроса;
- на вкладке Конструктор – группа команд Показать или скрыть — щёлкните по кнопке . В бланке запроса появится новая строка Групповые операции;
- запустите запрос на выполнение;
- сохраните и закройте запрос.
- Составьте запрос на получение сведений о путевках (№ путевки, Цена, Название страны), цены на которые были равны 700 руб. или 1990 руб.
При заполнении бланка запроса помимо строки Условие отбора (для поля Цена) используйте еще и строку ИЛИ бланка запроса.
!!! Не забудьте убрать из результата запроса повторяющиеся строки!!!
Сохраните и закройте запрос.
- Составьте запрос на получение сведений о туристах (Фамилия, Адрес, № путевки, Цена), купивших путевки по цене, превышающей 1000 рублей.
Заполненный бланк запроса будет выглядеть следующим образом:
- Составьте запрос на получение сведений о достопримечательностях (Название объекта, Описание, Название страны, Дата заезда), с которыми ознакомились туристы в 2002 году (для указания даты используйте шаблон).
ВАЖНО!! Так как нас интересует временной диапазон в целом (с января по декабрь 2002 года), без разбивки на конкретные даты, то в строке Группировка для поля ДатаЗаезда выберите из раскрывающегося списка — Условие.
Результат выполнения запроса:
- Составьте запрос на получение сведений (Турагентство, Адрес и Телефон турагентства, Дата заезда, Цена) о том, у каких турагентств и по каким ценам можно было приобрести путевку и посетить Эйфелеву башню. Поле Название объекта не включайте в результат выполнения запроса.
- Составьте запрос на получение сведений о туристах (Фамилия, Имя, Отчество, Название страны), выезжавших в страны с государственным языком – английский (поле Государственный язык не включайте в результат выполнения запроса).
- Составьте запрос на получение сведений о туристах (Фамилия, Адрес, Телефон), приобретавших путевки через турагентство «Экстрим» (поле Турагентство не включайте в результат выполнения запроса).
- Составьте запрос на получение сведений о путевках (№ путевки, Дата заезда, Цена, Фамилия туриста) в Италию в 2001 году (для указания даты используйте шаблон).
Результат выполнения запроса:
- Составьте запрос на получение сведений о туристах (Фамилия, имя туриста, телефон, № путевки), выезжавших по «горящим» путевкам. Название турагентства не включайте в результат выполнения запроса.
- Составьте запрос на получение сведений (№ путевки, Дата заезда, Цена, Турагентство, Телефон турагентства) по турам в США.
- Составьте запрос на получение сведений (№ путевки, Цена, Дата заезда) о ценах на путевки, в программу которых входило посещение Пизанской башни.
- Составьте запрос на получение сведений о туристах (Фамилия, Адрес_внутри_города, Телефон), которые путешествовали в июле-августе 2002 года (для указания даты используйте Построитель выражений, для удаления повторяющихся записей – итоги).
Для получения данных за некоторый временной период, например, с 1 по 31 марта 2001 года, удобно пользоваться оператором Between…And.
Сформируйте бланк запроса (перенесите нужные поля в бланк запроса), установите курсор в строке Условие отбора поля ДатаЗаезда и вызовите Построитель выражений (вкладка Конструктор – группа команд Настройка запроса — кнопка ).
В окне Построителя выражений выберите (щелчком мыши) Операторы – Сравнения – Between. Щелкните по кнопке Вставить.
В верхнем поле окна появиться строчка: Between Выражение And Выражение.
Источник: http://5fan.ru/wievjob.php?id=41873
Как создать запрос в access 2007 на обновление
В СУБД Access можно создавать queries для отображения требуемых полей из записей одной или нескольких таблиц.. В СУБД Access применяются различные типы запросов: на выборку, на обновление, на добавление, на удаление. Совет. Прежде чем выполнять запрос на обновление, щелкните левой кнопкой мыши по стрелке на кнопке Вид (View) и выберите Режим таблицы (Datasheet View). Вы увидите все записи, которые будут обновлены, хотя данные в обновляемых. Запрос на обновление Access может быть использован для обновления данных в полях базовых таблиц. Изменения вносятся в группу записей, отбираемых с . В бланке выбранного варианта запроса на обновление появляется поле Update To (Обновление), в которое нужно ввести новое значение поля. Чтобы увеличить (изменить) почасовую ставку подрядчиков на 10 ЕЕК, достаточно. Создание запросов на добавление, удаление, обновление в СУБД Access Практическая работа 12 ЦОР — презентация.
Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы.
Для удобства также приводим ссылку на оригинал на английском языке. С помощью запроса на обновление в базах данных Access можно добавлять, изменять и удалять данные в существующих записях.
Запросы на обновление можно рассматривать как разновидность диалогового окна Поиск и замена с более широкими возможностями. Запрос на обновление нельзя использовать для добавления новых записей в базу данных или их удаления из нее. Для добавления новых записей используется запрос на добавление, для удаления записей — запрос на удаление.
Использование запроса на обновление. Обновление данных в одной таблице данными из другой таблицы. Выполнение запроса, заблокированного из-за режима отключения содержимого. Ниже представлены сходства и различия между функцией «Поиск и замена» и запросом на обновление.
Как и в диалоговом окне Поиск и замена , в запросе на обновление можно указать значение, которое требуется заменить, а также новое значение. В отличие от функции Поиск и замена запрос на обновление позволяет:. Запрос на обновление нельзя использовать для обновления данных в полях указанных ниже типов. Вычисляемые поля.
Значения вычисляемых полей не хранятся в таблице постоянно.
Как сделать запрос на обновление в access 2007?
После вычисления они существуют только во временной памяти компьютера. Поскольку для вычисляемых полей не предусмотрено место постоянного хранения, их невозможно обновить.
Поля итогового или перекрестного запроса. Значения в запросах этих типов рассчитываются, поэтому их нельзя обновить с помощью запроса на обновление.
Поля с типом данных «Счетчик». Значения в полях с типом данных «Счетчик» изменяются только при добавлении записи в таблицу. Некоторые значения представляют одну запись, а другие — более одной записи. Операция обновления невозможна, так как невозможно определить, какие записи были исключены как дубликаты, и, следовательно, невозможно обновить все необходимые записи.
Создание простого запроса на выборку
Это ограничение действует, если вы используете запрос на обновление или пытаетесь обновить данные вручную путем ввода значений в форму или таблицу.
Поскольку некоторые повторяющиеся записи удаляются из результатов, приложению Access не удается обновить все необходимые записи. Поля, являющиеся первичными ключами.
В некоторых случаях, например если поле первичного ключа используется в связи таблиц, обновить поле с помощью запроса невозможно, если только для связи не было настроено автоматическое каскадное обновление.
К началу страницы. Чтобы создать запрос на обновление, рекомендуется выполнить следующее: создать запрос на выборку для определения записей, которые требуется обновить, а затем преобразовать его в запрос на обновление и обновить записи.
Можно ли курить если проколол язык
Такая последовательность позволяет убедиться, что вы обновляете именно нужные записи. Результаты данного запроса нельзя отменить, а созданная резервная копия позволит вам восстановить данные в случае необходимости.
Создание резервной копии базы данных.
Общие сведения
Откройте вкладку Файл и выберите команду Сохранить как. Справа в разделе Расширенная установка щелкните элемент Создать резервную копию базы данных.
В диалоговом окне Сохранение резервной копии укажите имя и расположение резервной копии и нажмите кнопку Сохранить. Чтобы вернуться к резервной копии, закройте и переименуйте исходный файл, чтобы получить возможность использовать имя исходной версии.
Назначьте резервной копии имя исходной версии и откройте переименованную резервную копию в Access. Этап 1. Создание запроса на выборку для определения обновляемых записей.
Этап 2. Обновление записей. На вкладке Создание в группе Запросы нажмите кнопку Конструктор запросов. Выделите одну или несколько таблиц с записями, которые требуется обновить, и нажмите кнопку Добавить , а затем — кнопку Закрыть. Таблица или таблицы отображаются в конструкторе запросов в одном или нескольких окнах, а в Windows список всех полей в каждой таблице.
На этом рисунке показан конструктор запросов с обычной таблицей. В окнах таблиц дважды щелкните поля, которые необходимо обновить. Выделенные поля появятся в строке Поле бланка запроса.
На рисунке показан бланк запроса со всеми добавленными полями.
Чтобы ограничить результаты запроса на основе значений полей, в бланке запроса в строке Условие введите условие, которое необходимо использовать для ограничения результатов.
В приведенной ниже таблице представлены некоторые примеры условий, а также результаты их применения. Выбирает даты между 2-фев и 1-дек ANSI Находит все записи, в которых содержимое поля не соответствует значению «Германия».
Можно ли заниматься сексом и принимать тержинан
Согласно этому условию будут найдены записи, содержащие дополнительный текст, кроме слова «Германия», например «Германия евро » или «Европа Германия «. Находит все записи кроме тех, которые начинаются с буквы «Т». Находит все записи, которые не оканчиваются буквой «т».
В текстовом поле выполняется поиск всех записей, которые начинаются на одну из первых четырех букв алфавита А-Г. Находит все записи, которые содержат сочетание букв «тр».
Находит все записи, начинающиеся с имени «Григорий» и содержащие вторую строку из 9 букв, из которых 6 букв составляют начало фамилии «Верный», а последняя буква неизвестна.
Рама для роторной тату машинки своими руками
Если в базе данных применяется набор подстановочных знаков ANSI, используйте вместо вопросительного знака? Поиск всех записей в течение 2 февраля г.
Источник: https://xn--80akqkgkeic1b.xn--p1ai/16838-kak-sozdat-zapros-v-access-2007-na-obnovlenie.php
Запрос на обновление Access — Базы данных Access
Сегодня поговорим на тему «Запрос на обновление Access». Запрос на обновление Access может быть использован для обновления данных в полях базовых таблиц.
Изменения вносятся в группу записей, отбираемых с помощью указанных пользователем условий отбора. Значения для изменений в полях определяются в бланке запроса в строке Обновление (Update To).
Задача.
Рассчитайте стоимость товара в каждой строке таблицы ОТГРУЗКА и сохраните ее в поле СУММА_ОТГР этой же таблицы.
- Для формирования запроса на обновление сначала создайте запрос Выборка (Select) на основе двух таблиц: обновляемой таблицы ОТГРУЗКА и таблицы ТОВАР.
- Преобразуйте запрос на выборку в запрос на обновление, щелкнув на кнопке Обновление (Update), размещенной на вкладке ленты Конструктор (Design) или выбрав команду Обновление (Update) из списка Тип запроса (Query Type) в контекстном меню запроса. После выполнения этой команды в бланке запроса появляется строка Обновление (Update To) (рис. 4.43).
- Заполните бланк запроса. Перетащите обновляемое поле СУММА_ОТГР из списка таблицы ОТГРУЗКА в строку Поле (Field). В строку Обновление (Update To) введите выражение [ЦЕНА]*[КОЛ_ОТГР], которое рассчитывает значение для обновления.
- Просмотрите содержимое обновляемого поля СУММА_ОТГР перед выполнением запроса, нажав кнопку Режим (View) на ленте конструктора запросов в группе Результаты (Results).
- Для обновления содержимого поля СУММА_ОТГР выполните запрос, нажав кнопку Выполнить (Run) на вкладке ленты Конструктор (Design). Открывается диалоговое окно с сообщением о числе обновляемых записей и вопросом о продолжении операции обновления. Подтвердите обновление записей.
- Просмотрите содержимое обновляемого поля СУММА_ОТГР после выполнения запроса. Для этого переключитесь после выполнения запроса в режим таблицы, воспользовавшись кнопкой Режим таблицы (Datasheet View) в строке состояния или нажмите кнопку Режим (View) на вкладке ленты.
Таким образом, рассмотренный запрос позволяет автоматизировать расчет стоимости товара, указанного в каждой строке спецификации накладной ― записи таблицы ОТГРУЗКА.
- Если обновлять нужно только некоторые строки таблицы, задайте условия отбора обновляемых записей. Для этого дополните бланк запроса полем, по которому требуется произвести отбор записей. Перетащите поле КОД_ТОВ в бланк запроса и введите в строку Условия отбора (Criteria) параметр [Введите код товара] (см. рис. 4.43).
- Выполните запрос. Обновление будет выполнено только для записей с введенным кодом товара.
- Сохраните запрос под именем Расчет стоимости.
- Перейдите в режим SQL. Эквивалентная запросу на обновление инструкция UPDATE будет записана следующим образом:
UPDATE ТОВАР INNER JOIN ОТГРУЗКА ON ТОВАР.КОД_ТОВ = ОТГРУЗКА.КОД_ТОВSET ОТГРУЗКА.СУММА_ОТГР = [ЦЕНА]*[КОЛ_ОТГР]
WHERE (((ТОВАР.КОД_ТОВ)=[Введите код товара]));
Имена таблиц, используемых в запросе, и способ их объединения задаются не-посредственно за именем инструкции UPDATE. Инструкция UPDATE обновляет указанное в предложении SET поле ОТГРУЗКА.
СУММА_ОТГР, присваивая значение, за-данное выражением [ЦЕНА]*[КОЛ_ОТГР]. Обновление происходит во всех записях, которые удовлетворяют условию отбора, заданному в предложении WHERE.
Для закрепления смотрим видеоурок:
Источник: https://accesshelp.ru/zapros-na-obnovlenie-access/
Как сделать запрос на обновление в access 2007?
Сегодня поговорим на тему «Запрос на обновление Access». Запрос на обновление Access может быть использован для обновления данных в полях базовых таблиц.
Изменения вносятся в группу записей, отбираемых с помощью указанных пользователем условий отбора. Значения для изменений в полях определяются в бланке запроса в строке Обновление (Update To). Задача.
Рассчитайте стоимость товара в каждой строке таблицы ОТГРУЗКА и сохраните ее в поле СУММА_ОТГР этой же таблицы.
- Для формирования запроса на обновление сначала создайте запрос Выборка (Select) на основе двух таблиц: обновляемой таблицы ОТГРУЗКА и таблицы ТОВАР.
- Преобразуйте запрос на выборку в запрос на обновление, щелкнув на кнопке Обновление (Update), размещенной на вкладке ленты Конструктор (Design) или выбрав команду Обновление (Update) из списка Тип запроса (Query Type) в контекстном меню запроса. После выполнения этой команды в бланке запроса появляется строка Обновление (Update To) (рис. 4.43).
- Заполните бланк запроса. Перетащите обновляемое поле СУММА_ОТГР из списка таблицы ОТГРУЗКА в строку Поле (Field). В строку Обновление (Update To) введите выражение *, которое рассчитывает значение для обновления.
- Просмотрите содержимое обновляемого поля СУММА_ОТГР перед выполнением запроса, нажав кнопку Режим (View) на ленте конструктора запросов в группе Результаты (Results).
- Для обновления содержимого поля СУММА_ОТГР выполните запрос, нажав кнопку Выполнить (Run) на вкладке ленты Конструктор (Design). Открывается диалоговое окно с сообщением о числе обновляемых записей и вопросом о продолжении операции обновления. Подтвердите обновление записей.
- Просмотрите содержимое обновляемого поля СУММА_ОТГР после выполнения запроса. Для этого переключитесь после выполнения запроса в режим таблицы, воспользовавшись кнопкой Режим таблицы (Datasheet View) в строке состояния или нажмите кнопку Режим (View) на вкладке ленты.
Таким образом, рассмотренный запрос позволяет автоматизировать расчет стоимости товара, указанного в каждой строке спецификации накладной ― записи таблицы ОТГРУЗКА.
- Если обновлять нужно только некоторые строки таблицы, задайте условия отбора обновляемых записей. Для этого дополните бланк запроса полем, по которому требуется произвести отбор записей. Перетащите поле КОД_ТОВ в бланк запроса и введите в строку Условия отбора (Criteria) параметр (см. рис. 4.43).
- Выполните запрос. Обновление будет выполнено только для записей с введенным кодом товара.
- Сохраните запрос под именем Расчет стоимости.
- Перейдите в режим SQL. Эквивалентная запросу на обновление инструкция UPDATE будет записана следующим образом: UPDATE ТОВАР INNER JOIN ОТГРУЗКА ON ТОВАР.КОД_ТОВ = ОТГРУЗКА.КОД_ТОВ
SET ОТГРУЗКА.СУММА_ОТГР = * WHERE (((ТОВАР.КОД_ТОВ)=));
Имена таблиц, используемых в запросе, и способ их объединения задаются не-посредственно за именем инструкции UPDATE. Инструкция UPDATE обновляет указанное в предложении SET поле ОТГРУЗКА.СУММА_ОТГР, присваивая значение, за-данное выражением *. Обновление происходит во всех записях, которые удовлетворяют условию отбора, заданному в предложении WHERE. Для закрепления смотрим видеоурок:
Запросы на обновление используются главным образом для того, чтобы внести изменения сразу в большое количество записей с помощью одного запроса. Классическим примером такого запроса является изменение цены в таблице «Товары» (Products) на некоторый постоянный коэффициент, например можно увеличить цену одной из категорий товара на 20%. Чтобы создать такой запрос:
- Раскройте список таблиц, щелкнув мышью по ярлыку Таблицы (Tables) окна базы данных.
- Выделите таблицу «Товары» (Products). Щелкните левой кнопкой мыши по стрелке на кнопке Новый объект (New Object) на панели инструментов и выберите из списка значение Запрос (Query). Появится окно Конструктора запросов с таблицей «Товары» в верхней части. Перенесите в бланк запроса поля «Цена» и «КодТипа».
- Введите условие отбора записей: например, в столбец «КодТипа» введите значение 1.
- Выполните запрос, чтобы убедиться, что отбираются все записи, содержащие напитки.
- Теперь изменим запрос, превратив его в запрос на обновление. Для этого выполните команду меню Запрос, Обновление (Query, Update). Изменяется заголовок запроса и появляется дополнительная строка Обновление (Update To). При этом исчезают строки Сортировка (Sort) и Вывод на экран (Show) (рис. 8.8).
- Теперь нужно в строку Обновление (Update To) ввести выражение, по которому будет вычисляться новая цена: * 0, 2. В других случаях можно вводить константу, например, если нужно поменять дату во многих записях на текущую.
- Теперь можно выполнить запрос. Для этого нажмите кнопку Запуск (Run) на панели инструментов. Так же, как и при добавлении записей в таблицу, Access выдаёт сообщение о количестве обновляемых записей и запрашивает подтверждение на обновление. Вы можете подтвердить обновление записей или отвергнуть.
Рис. 8.8. Запрос на обновление записей
Совет
Прежде чем выполнять запрос на обновление, щелкните левой кнопкой мыши по стрелке на кнопке Вид (View) и выберите Режим таблицы (Datasheet View). Вы увидите все записи, которые будут обновлены, хотя данные в обновляемых полях будут еще старые. И только убедившись, что отобраны нужные записи, можно выполнять запрос.
В приведенном примере изменялись значения в поле, которое не является первичным ключом в таблице «Товары» (Products). Особый случай возникает, когда требуется обновить значение первичного ключа в таблице.
Если эта таблица связана отношением «один-ко-многим» с другими таблицами, то при изменении первичного ключа записи должны одновременно измениться значения внешних ключей во всех связанных записях подчиненных таблиц. Access обеспечивает выполнение такого изменения автоматически, т. к. поддерживает каскадное обновление записей.
При определении связи между таблицами можно установить флажок каскадное обновление связанных полей (Cascade Update Related Fields).
Если такой флажок установлен, то при изменении значения первичного ключа в главной таблице Access автоматически выполняет специальный запрос, с помощью которого обновляются внешние ключи всех связанных записей в подчиненной таблице.
Убедиться в том, как работает такой запрос, можно на примере таблиц «Сотрудники» (Employees) и «Заказы» (Orders). Для этого нам придется сначала сделать копии этих таблиц и установить связь между ними:
- Раскройте список таблиц в окне базы данных и выделите таблицу «Сотрудники».
- Скопируйте таблицу в буфер обмена, нажав комбинацию клавиш +.
- Вставьте таблицу из буфера обмена, нажав комбинацию клавиш +. Появится диалоговое окно Вставка таблицы (Paste Table As).
- В поле Имя таблицы (Table Name) введите строку: Сотрудники (копия). Оставьте предлагаемое по умолчанию значение переключателя в группе Параметры вставки (Paste Options). Нажмите кнопку ОК или клавишу . В списке появится новая таблица.
- Выполните шаги 1—4 для таблицы «Заказы», создав таблицу «Заказы (копия)».
- Для выполнения примера нам придется немного изменить таблицу «Заказы (копия)». Поле «КодСотрудника» в таблице «Заказы» является полем подстановки, т. е. хотя в этом поле содержатся коды сотрудников, при отображении таблицы в этом поле показываются фамилия и имя сотрудника. Мы можем временно удалить поле подстановки, чтобы видеть результаты каскадного обновления данного поля. Для этого достаточно открыть таблицу «Заказы (копия)» в режиме Конструктора, выделить строку «КодСотрудника», раскрыть в панели Свойства поля (Field Properties) вкладку Подстановка (Lookup) и установить значение свойства Тип источника строк (Row Source Type) равным Поле (Text box). Сохраните изменение.
- Еще одно изменение потребуется ввести в таблицу «Сотрудники (копия)». Поле «КодСотрудника» в ней имеет тип Счетчик (AutoNumber), поэтому Access не позволит изменить значение в этом поле. Откройте эту таблицу в режиме Конструктора и замените тип данных для поля «КодСотрудника» на Числовой (Number).
- Теперь нужно установить связи между новыми таблицами. Нажмите кнопку Схема данных (Relationships) на панели инструментов для вывода окна Схема данных (Relationships).
- Нажмите кнопку Очистить макет (Clear Layout), чтобы очистить окно схемы данных. Подтвердите свое намерение в окне сообщения, нажав кнопку Да (Yes).
- Добавьте таблицы «Сотрудники (копия)» и «Заказы (копия)» с помощью диалогового окна Добавление таблицы (Show Table). Для этого нажмите соответствующую кнопку на панели инструментов.
- Чтобы установить связь «один-ко-многим» между таблицами, перетащите поле «КодСотрудника» таблицы «Сотрудники (копия)» в соответствующее поле таблицы «Заказы (копия)». Появится диалоговое окно Изменение связей (Edit Relationship).
- В этом окне необходимо установить флажки Обеспечение целостности данных (Enforce Referential Integrity) и каскадное обновление связанных полей (Cascade Update Related Fields) (рис. 8.9). Нажмите кнопку ОК.
- Закройте окно Схема данных (Relationships).
Рис. 8.9. Диалоговое окно Изменение связей
Для выполнения каскадного обновления:
- Откройте таблицы «Сотрудники (копия)» и «Заказы (копия)» и разместите их на экране так, чтобы были видны обе таблицы (рис 8.10).
- Отсортируйте таблицу «Заказы (копия)» по столбцу «Сотрудник». Для этого выделите данный столбец, щелкнув левой кнопкой мыши по его заголовку, и нажмите кнопку Сортировка по возрастанию (Sort Ascending) на панели инструментов.
- Измените значение в столбце «Код сотрудника» первой записи таблицы «Сотрудники (копия)», введя число 10, и нажмите клавишу , чтобы перейти к следующей записи. Изменение кода сразу же будет отображено в столбце «Сотрудник» таблицы «Заказы (копия)».
Рис. 8.10. Каскадное обновление записей
Бывают ситуации, когда во всей базе данных необходимо обновить информацию в каком-либо поле. Это очень просто сделать с помощью запроса на обновление.
Для создания запроса на вкладке Создание нужно выбрать Конструктор запросов. Из появившегося диалогового окна выбрать нужные таблицы, поля которых необходимо обновить.
В данном примере мы работаем с таблицей Студенты и обновлять будем проходной балл поступающих в ВУЗ.
Добавив нужную таблицу, мы двойным щелчком мыши добавляем нужные для запроса поля. К примеру, ФИО студента и Проходной балл. В поле Тип запроса выберем Запрос на обновление, чтобы запрос мог менять информацию в таблице согласно условию.
Запрос на обновление может также добавлять или удалять информацию. Это равносильно функции Поиск и замена, но с более широкими возможностями. В поле Проходной балл введем необходимое условие обновления и условие отбора.
Например, заменим проходной балл на 5 для всех студентов, у которых он ранее был меньше четырех.
Чтобы выполнить запрос, необходимо запустить его, нажав на кнопку Выполнить на верхней вкладке или дважды щелкнув по нему в списке запросов. В появившемся диалоговом окне необходимо подтвердить замену данных по составленному нами условию. В итоге все оценки ниже четырех баллов будут заменены на оценку 5, что видно в таблице.
- ← Назад в раздел
- 01:37
- Ссылка:
- Код:
Источник: http://word-office.ru/kak-sdelat-zapros-na-obnovlenie-v-access-2007.html
Общие сведения о запросах
- Российский университет кооперации
- Кафедра информационных технологий
- Дисциплина «Информатика»
Подготовила доцент Гудзенчук З.В.
Тема.
СУБД Access
—запросы на обновление
Запросы
используются для просмотра,. сортировки,
фильтрации, изменения и анализа данных
различными способами. Запросы также
можно использовать в качестве источников
записей для форм, отчетов и страниц
доступа к данным
В
Access
запросы можно создавать в двух режимах:
- QBE (Query By Example) — запросы по образцу, параметры которых устанавливаются в окне конструктора запросов — бланке запроса;
- SQL (Structured Query Language) — структурированный язык запросов, при создании которых применяются операторы и функции языка SQL.
В
Access
легко переключить запрос из режимаQBEв
режимSQL—запроса:
- в режиме QBE щелкнуть правой кнопкой мыши в верхней части бланка запроса и затем в контекстном меню выбрать
- в режиме QBE выбрать из списка
В
режиме таблицы
Запрос отображает для просмотра
результат выполнения запроса.
Типы запросов
В
режиме Конструктора
тип запроса выбирается щелчком на одной
из кнопок группы
Тип запроса (таблица
1).
Таблица
1
Кнопка запроса | Тип запроса | Назначение запроса |
Выбор | Создание запроса, который выполняет отбор записей из базы данных и показывает их. | |
Создание таблицы | Создание запроса, который выполняет отбор записей из базы данных и сохраняет их как новую таблицу | |
Добавление | Создание запроса, который добавляет данные в существующую таблицу | |
Обновление | Создание запроса, который изменяет данные в существующей таблице | |
Перекрестный | Создание запроса, который выполняет сведение данных по двум наборам значений, один из которых отображается в левой части, а другой – в верхней ее части. | |
Удаление | Создание запроса, который удаляет данные, соответствующие указанным условиям, из существующей таблицы | |
Объединение | Создание запроса, который организует получение и просмотр данных из нескольких связанных таблиц. | |
Запрос к серверу | Создание запроса в режиме SQL. При использовании связанных таблиц серверных баз данных, таких как SQL Server или Oracle, может возникнуть необходимость выполнить на сервере запрос, обладающий расширенными возможностями по сравнению с «собственным» языком SQL Access, поддерживаемом сервером. | |
Управление | Создание запроса определения данных (управляющие запросы) в режиме SQL. В управляющем запросе Access можно использовать инструкции CREATE TABLE (создание таблицы) и ALTER TABLE (изменение структуры таблицы). |
Тип запроса на изменение
Запрос
на изменения
— это запрос, который позволяет, выполнив
одну операцию, внести изменения во
многие записи. Существует четыре типа
запросов на изменение:
- создание таблицы
- удаление записей
- добавление записей
- обновление записей.
Перечисленные
типы запросов на изменение позволяют
автоматически создавать новые таблицы
или изменять базовые таблицы в соответствии
с данными результирующих таблиц.
Источник: https://studfile.net/preview/3177025/