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




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

Рис. 15.

 

Чтобы построить запрос на добавление записей, выполните следующее.

1. Создайте новый запрос. В нашем примере бланк запроса включает три поля таблицы ОжидаемыеТовары (рис. 16).

Рис. 16.

 

2. Чтобы преобразовать запрос на выборку в запрос на добавление, щелкните на кнопке Добавление груп­пы Тип запроса. На экране появится диалоговое окно Добавление.

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

Рис. 17.

 

В бланке запроса теперь появилась новая строка — Добавление (рис. 18).

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

4. Щелкните на кнопке Выполнить группы Результаты. Программа Access сообщит о том, какое число записей будет добавлено в таблицу. Щелкните на кнопке Да, чтобы завершить выполнение запроса.

5. Если необходимо, сохраните запрос.

6. Чтобы проверить полученные результаты, обратитесь к категории Таблицы облас­ти переходов и откройте целевую таблицу Товары.

 

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

Как и следует из названия, главное и единственное назначение запросов такого типа — удалять из таблиц (или нескольких таблиц) записи, соответствующие определен­ному критерию. Именно записи, а не значения отдельных полей, для удаления которых можно воспользоваться запросом на обновление. Применение запросов на удаление обя­зывает быть предельно внимательным, поскольку удаление записей выполняется без возможности их последующего восстановления.

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

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

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

3. Вернитесь в режим конструктора запросов и воспользуйтесь для выбора типа за­проса (на удаление записей) кнопкой Удаление группы Тип запроса. Запрос на выборку будет преобразован в запрос на удаление, а в бланке запроса вместо стро­ки Сортировка появится новая строка — Удаление. Простой пример бланка за­проса на удаление приведен на рис. 18.

Рис. 18.

 

4. Щелкните на кнопке Выполнить группы Результаты. Программа Access сообщит о том, сколько записей будет удалено и запросит подтверждение операции. Щелк­ните на кнопке Да, если вы готовы расстаться с указанными записями.

Таков сценарий удаления записей из одной, не связанной с другими таблицы. Однако на практике таблицы базы данных, как правило, связаны между собой, и наличие этих связей в схеме базы данных обязательно учитывается программой Access при попытке удалить записи одной из связанных таблиц. Напомним, что если между таблицами определено от­ношение "один ко многим" и в диалоговом окне Изменение связей установлен флажок опции каскадное удаление связанных записей, при удалении записи в главной таблице автоматически будут удалены все связанные записи подчиненной таблицы, даже если ее поля не фигурировали в бланке запроса на удаление.

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

 

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

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

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

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

Чтобы внести изменения в записи таблицы, выполните следующее.

1. Создайте новый запрос на выборку и добавьте в него таблицу Товары. Добавьте в бланк запроса поле ЦенаПродажи.

2. Чтобы преобразовать запрос на выборку в запрос на обновление, воспользуйтесь для выбора типа запроса (на обновление записей) кнопкой Обновление группы Тип запроса.

Теперь запрос является запросом на обновление. Кроме того, в бланк запроса до­бавлена новая строка Обновление.

3. Введите новое значение для обновляемого поля. Так, в ячейку строки Обновле­ние, соответствующую столбцу ЦенаПродажи, следует ввести выражение [ЦенаПродажи]*0,95 (рис. 19).

Если в бланке запроса на обновление не указан критерий отбора записей (строка Условие отбора остается пустой), при выполнении запроса будут модифицированы значения во всех записях таблицы.

4. Щелкните на кнопке Выполнить группы Результаты. Программа Access сообщит о том, какое число записей будет обновлено в таблице. Щелкните на кнопке Да, чтобы завершить выполнение запроса. Чтобы отменить операцию обновления, щелкните на кнопке Нет.

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

Рис. 19. Бланк запроса на обновление

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2021-12-14 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: