Microsoft Access 2007 - Александр Днепров
Шрифт:
Интервал:
Закладка:
5. В раскрывающемся списке Имя укажите принтер для печати (если принтер у вас один, он уже будет выбран).
6. Для распечатки всех страниц установите переключатель Печатать в положение Все .
7. Нажмите кнопку ОК , после чего начнется печать.
На этом закончим изучение темы создания запросов на выборку. В этой главе были рассмотрены виды запросов, описан процесс создания запросов и их редактирования. Остается только подвести итоги.
Резюме
В начале главы было дано понятие запросов, а также описаны их виды. Освоив это, вы разобрались с созданием запросов на выборку различными способами, начиная с самых простых и заканчивая самыми сложными. Создав и сохранив запрос, мы рассмотрели ряд действий для его изменения. После этого мы перешли к сложным вопросам, изучение которых также не вызвало затруднений. В конце главы были рассмотрены возможности практического использования уже созданных запросов в базе данных Microsoft Access 2007.
Глава 6 Изменение и анализ данных с помощью запросов
Запросы на изменение
Создание таблиц с помощью запроса
Создание запросов на добавление данных
Создание запросов на обновление таблиц
Создание запросов на удаление записей
Анализ данных с помощью запросов
Удаление повторяющихся записей с помощью запросов
Резюме
В предыдущей главе мы рассмотрели, как создавать и выполнять запросы на выборку данных из таблиц. На самом деле запросы позволяют автоматизировать практически все необходимые операции с данными. В этой главе будет рассмотрено создание запросов на добавление, удаление, обновление, анализ данных, создание таблиц.
Запросы на изменение
Запросы на изменение дают возможность корректировать данные, содержащиеся в таблицах.
Существует четыре вида запросов на изменение:
• запрос на создание таблицы – создает новую таблицу на основе данных, которые уже размещены в одной или нескольких таблицах;
• запрос на удаление – удаляет записи из одной или нескольких таблиц на основании критериев, заданных в запросе;
• запрос на добавление – добавляет записи целиком или только указанные поля в одну или несколько таблиц;
• запрос на обновление – изменяет данные в существующих таблицах, обновляя записи с использованием критериев.
Запросы на изменение, как и запросы на выборку, создаются с помощью конструктора запросов и могут редактироваться с использованием языка SQL.
Для любого типа запроса на изменение сначала создается запрос на выборку, в котором разрабатываются критерии выбора записей, участвующих в запросе. Далее запрос на выборку преобразуется в один из запросов на изменение.
При составлении запросов могут использоваться объединение таблиц, параметры, функции, рассмотренные для создания запросов в предыдущей главе.
Необходимо помнить, что если открывается база данных, которая находится не в надежном расположении, и при этом ей не предоставлено состояние доверенной, то приложение Access по умолчанию не допускает выполнения запросов на изменение, то есть запросов на добавление, обновление, удаление или на создание таблицы.
Если при попытке выполнения запроса на изменение ничего не происходит, проверьте, не появляется ли в строке состояния следующее сообщение: Данное действие или событие заблокировано в режиме отключения (рис. 6.1).
Рис. 6.1. Строка состояния при заблокированном содержимом
Если оно отображается, необходимо включить заблокированное содержимое. Для этого выполните следующие действия.
1. На панели сообщений нажмите кнопку Параметры . Откроется окно Параметры безопасности Microsoft Office (рис. 6.2).
Рис. 6.2. Окно Параметры безопасности Microsoft Office2. Установите переключатель в положение Включить это содержимое .
3. Нажмите кнопку ОК .
4. Перезапустите запрос.
Далее в этой главе будет рассмотрено создание различных типов запросов на изменение на множестве конкретных примеров.Создание таблиц с помощью запроса
Источником данных при создании новой таблицы являются уже существующие одна или несколько таблиц. Новая таблица может находиться в той же базе данных, где находится источник, или в любой другой.
Для чего нужно создание таблиц с помощью запроса? В основном для архивации данных. Предположим, у вас есть запрос на выборку, использующий несколько таблиц. При этом запрос используется часто, а данные в таблицах остаются неизменными. В таком случае проще и быстрее один раз поместить результаты выборки в новую таблицу и использовать ее вместо сложного запроса на выборку.
...Примечание
После создания данные в новой таблице не связаны с данными источника. Поэтому ваша задача – следить за актуальностью данных в случае архивации.
Запрос на создание таблицы создается путем преобразования запроса на выборку. Добавьте новую таблицу в учебную базу данных Отдел продаж .
1. Откройте базу данных Отдел продаж .
2. На вкладке Создание в группе Другие нажмите кнопку Конструктор запросов .
3. В окне Добавление таблицы (рис. 6.3) дважды щелкните кнопкой мыши на названиях таблиц, из которых нужно получить данные: Клиенты и Заказы . Нажмите кнопку Закрыть .
Рис. 6.3. Окно Добавление таблицы
4. В каждой таблице дважды щелкните кнопкой мыши на полях, которые необходимо добавить в выборку. Выберите поля Номер и Имя из таблицы Клиенты и поля Дата , Товар , Количество , Сумма из таблицы Заказы .
5. Добавьте условие отбора =1 в строку Условия отбора бланка запроса, чтобы выбирались сделанные заказы для первого клиента.
Текст запроса на выборку приведен в листинге 6.1....Листинг 6.1.
Запрос на выборку
SELECT Клиенты. [Номер (ID)], Клиенты. Имя, Заказы. Дата, Заказы. Товар, Заказы. Количество, Заказы. Сумма
FROM Клиенты INNER JOIN Заказы ON Клиенты. [Номер (ID)] = Заказы. Клиент
WHERE (((Клиенты. [Номер (ID)])=1));
6. Теперь перейдите на вкладку Конструктор и выберите команду Выполнить (рис. 6.4).
Рис. 6.4. Результат выполнения запроса на выборку
Был создан запрос на выборку из двух таблиц. До сих пор использовались знания, полученные из предыдущей главы. Чтобы преобразовать запрос, выполните следующие действия.
1. Щелкните правой кнопкой мыши на заголовке вкладки запроса. Выберите команду Конструктор .
2. На вкладке Конструктор в группе Тип запроса выберите команду Создание таблицы . Откроется окно Создание таблицы (рис. 6.5).
Рис. 6.5. Окно Создание таблицы3. В раскрывающемся списке имя таблицы выберите название новой таблицы – Заказы клиента 1 . Установите переключатель в положение в текущей базе данных . Нажмите кнопку ОК . Текст запроса приведен в листинге 6.2.
...Листинг 6.2.
Запрос на создание таблицы
SELECT Клиенты. [Номер (ID)], Клиенты. Имя, Заказы. Дата, Заказы. Товар,
Заказы. Количество, Заказы. Сумма INTO [Заказы клиента 1]
FROM Клиенты INNER JOIN Заказы ON Клиенты. [Номер (ID)] = Заказы. Клиент
WHERE (((Клиенты. [Номер (ID)])=1));
4. Нажмите кнопку Выполнить . Откроется окно подтверждения операции.
5. Нажмите кнопку Да .
В структуре базы данных появилась новая таблица Заказы клиента 1 , содержащая те же поля и данные в них, которые содержала выборка.
Создание запросов на добавление данных
Запрос на добавление используется, когда необходимо добавить к имеющейся таблице новые записи. Исходных таблиц может быть одна или несколько, при этом они могут находиться в той же самой базе данных, что и результирующая, или в другой.
Как и в случае с запросом на создание таблицы, запрос на добавление данных создается из запроса на выборку. Добавьте в таблицу Заказы записи о заказах на все товары одного из покупателей.
1. Откройте базу данных Отдел продаж .
2. На вкладке Создание в группе Другие нажмите кнопку Конструктор запросов .
3. В окне Добавление таблицы дважды щелкните кнопкой мыши на названиях таблиц, из которых нужно получить данные. Вам понадобится только таблица Товары . Нажмите кнопку Закрыть .
4. Дважды щелкните кнопкой мыши на полях, которые необходимо добавить в выборку. Выберите поля Код и Цена .
5. В бланке запроса в строке Поле в третьей колонке введите значение 1. Это будет заказанное количество товаров.