Как вы помните, эти две таблицы различны по структуре, а также по набору и формату полей. Поэтому соответствие полей обеих таблиц определяет пользователь индивидуально для каждой ситуации. В данном случае – согласно табл. 11.1, где в левом столбце представлены поля, которые мы хотим включить в итоговую объединенную таблицу, а в правом – те столбцы из таблицы ES_OPER, которые должны «поставлять» информацию в объединенную таблицу. Таблица 11.1
Поля, не имеющие аналогов в правом столбце табл. 11.1, следует ввести в таблицу Выборка1 вручную (если они изначально в этой таблице отсутствуют – в нашем случае – поле Текст сообщения). Это знакомая нам корректировка структуры таблицы с помощью конструктора таблиц показана на рис. 11.44. Если поле в столбце таблицы Выборка1 имеет аналог в правом столбце, это означает, что информация из данного поля в таблице ES_OPER включается в соответствующее поле таблицы Выборка1.
С учетом всего сказанного правила построения запроса на добавление (на примере рис. 11.43) таковы:
• базовой таблицей для запроса на добавление является дополнительная (в отличие от основной, на которой построена таблица Выборка1 . В данном случае такой дополнительной таблицей является ES_OPER, а основной – File1;
• в качестве полей в запрос включаются только те дополнительные поля, которых не хватает в таблице Выборка1 для формирования в ней объединенной информации. В данном случае – поля Дата ЧС, Виды ЧС, Текст сообщения, Населенный пункт;
• в графе запроса Добавление указываются те поля в таблице Выборка1 , куда заносится информация из отобранных полей дополнительной таблицы (ES_OPER).
Теперь, когда введены все необходимые поля и готовый запрос на добавление (рис. 11.43), осталось только щелкнуть по кнопке
В результате выполнения запроса на экране появится предупреждение о том, что в таблицу Выборка! будет включено еще 11 отобранных записей (рис. 11.45) в дополнение к тем двум записям, которые были получены на первом шаге из таблицы Fiie1 (см. рис. 11.41).
Итоговая таблица с объединенной информацией показана на рис. 11.46.
Итак, вы убедились, что Access 2002 позволяет объединять сведения из таблиц с разной структурой записей. Это очень важно в практической работе.
Запрос на удаление записей
Базы данных не только используются по прямому назначению; часто возникает необходимость произвести в них некоторые вспомогательные, служебные операции. Например, время от времени базу данных надо чистить: там обнаруживаются дублирующиеся записи, устаревшая, бесполезная информация и т. д.
В принципе можно удалить запись из БД и без помощи запроса, а непосредственно из формы, как описывалось в главе 4. Кроме того, можно просто открыть таблицу и удалить выбранную запись. Однако суть проблемы именно в этом слове – «выбранная». Когда число записей в таблице растет и их счет идет на тысячи, определение «жертвы» превращается в сложное и трудоемкое мероприятие. Использование запроса на выборку помогает решить такую задачу.
В окне конструктора создайте обычный запрос на выборку (см. рис. 11.4). Затем с помощью уже хорошо известной вам кнопки
откройте меню Тип запроса и активизируйте в нем опцию Запрос на удаление. Теперь надо ввести в запрос критерии отбора записей для последующего удаления. Здесь требуется уточнить, какие именно записи должны быть уничтожены.