
- •2.6. Связывание таблиц
- •2.7. Проектирование запросов
- •2.7.1. Простой запрос
- •2.7.2. Конструктор
- •2.7.3. Повторяющиеся значения
- •2.7.4. Перекрестный запрос
- •Создание перекрестного запроса без помощи мастера
- •Создание перекрестных запросов с помощью мастера
- •Сортировка или ограничение заголовков столбцов, выводящихся в перекрестном запросе
- •2.7.5. Запрос на изменения
- •2.7.5.1. На добавление записей
- •2.7.5.2. На удаление записей
- •2.7.5.3. На обновление записей
- •2.7.5.4. На создание таблицы
- •2.7.6. Вычисления в запросах
- •2.7.6.1. Арифметические операторы
- •2.7.6.2. Операторы присваивания и сравнения
- •2.7.6.3. Логические операторы
- •2.7.6.4. Операторы слияния строковых значений
- •2.7.6.4. Операторы идентификации
- •2.7.6.5. Операторы сравнения с образцом
- •2.7.6.6. Создание выражений с помощью "Построителя выражений"
- •2.7.6.7. Функция сравнения
- •2.7.6.8. Статистические функции
2.7.5.1. На добавление записей
С помощью запроса на добавление записи из одной таблицы (все или отобранные запросом) можно поместить в конец другой таблицы. Обе таблицы могут находиться как в одной, так и в разных базах данных.
Для отбора добавляемых записей нужно составить запрос на выборку. Затем надлежит выполнить составленный запрос и оценить результат. После этого необходимо вернуться в режим "Конструктора" и активизировать команду "Добавление…" из меню "Запрос" (Рис. 18).
Рассмотрим на примере получение запроса на добавление в учебной базе данных "Успеваемость студентов".
Сначала создадим копию структуры таблицы "Студенты" под именем "Студ_1" (Рис. 19).
Затем создадим запрос на выборку студентов, например, группы "М-1-1" (Рис. 20).
Рис. 20
Выполнив запрос, убедимся, что данные отбираются правильно. Вернемся в режим "Конструктора" и выполним команду "Запрос"-"Добавление…".
При выполнении команды Access предложит указать имя таблицы, в которую надо добавить данные и место расположения таблицы, укажем новую таблицу "Студ_1" (Рис. 21).
Теперь выполним запрос. В открывающемся окне сообщается сколько записей будет добавлено (Рис. 22).
Рис. 21 Рис. 22
После нажатия на кнопку "Да", Access отобранные записи поместит в таблицу "Студ_1" (Рис. 23):
Рис. 23
Закроем запрос и дадим ему имя "Запрос_добавление" (Рис. 24).
Рис. 24
При этом в окне базы данных во вкладке "Запросы" появиться новый запрос, снабженный восклицательным знаком (Рис. 25).
Рис. 25
Если теперь в "Запросе_добавление" применить параметр (в строке "Условие отбора" в режиме "Конструктора" в поле "Группа" вставить текст-обращение "[Введите группу]"), а потом выполнить запрос, то Access предупреждает об изменении таблицы данных в результате выполнения запроса (Рис. 26). При выполнении же запроса новые данные будут помещены в указанную таблицу (Рис. 27). Если же Access не может добавить данные, то он предупреждает об этом (Рис. 28).
Рис. 26
Рис. 27
Рис. 28
2.7.5.2. На удаление записей
Запросы этого типа служат для удаления из таблицы групп записей, соответствующих некоторому критерию отбора. Поскольку записи, удаленные посредством запроса, нельзя восстановить, следует тщательно анализировать критерии отбора.
Для начала надо разработать запрос на выборку удаляемых записей. Выполнить этот запрос, чтобы проверить корректность заданных критериев, и вернуться в режим "Конструктора".
После этого следует активизировать команду "Удаление" в меню "Запрос" (Рис. 18). Далее следует выполнить запрос.
Рассмотрим построение запроса на удаление на примере учебной базы данных "Успеваемость студентов".
Построим запрос на удаление записей из таблицы "Студ_1". Для этого строим запрос с параметром на выбор студентов по заданной группе, выполним его, а потом в режиме "Конструктора" выполним команду "Запросы"-"Удаление" (Рис. 29), в результате в "бланке запроса" появится строка "Удаление".
Рис.
29
Сохраним запрос под именем "Запрос-удаление" (Рис. 30).
Рис. 30
В окне базы данных во вкладке "Запросы" появиться запрос на удаление, помеченный специальной пиктограммой и восклицательным знаком (Рис. 31).
Рис. 31
Теперь выполним запрос на удаление (для этого дважды щелкнем мышью по названию запроса или щелкнуть мышью по кнопке "Открыть"). Access выдает сообщение об удалении записей и изменении таблицы (Рис. 32).
Рис. 32
Щелкаем мышью по кнопке "Да" для подтверждения выполнения запроса и вводим группу "Т-3-2" (Рис. 33).
Рис. 33 Рис. 34
Access предупреждает о количестве удаляемых записей (Рис. 34):
После нажатия кнопки "Да" Access выполнит удаление записей из таблицы "Студ_1", количество записей в ней уменьшиться. Так как мы сначала добавили в нее студентов группы "Т-3-2" (Рис. 27), а потом удалили из нее те же данные, то данные в таблице "Студ_1" будут такими же, как и на рисунке 23.