Создание+запросов


 * Запросы** – объекты базы данных, извлекающие из таблиц или других запросов информацию согласно заданным условиям. Это виртуальные таблицы (существующие в оперативной памяти компьютера.

На диске хранится лишь структура самого запроса, формулы и условия, по которым будут выбираться данные), не являющиеся хранилищем информации, но через большинство запросов можно менять информацию, применять вычисляемые поля (значения которых также не хранятся на жёстком диске).

Можно легко обнаружить, является ли запрос обновляемым: при отображении результатов запроса в конце записей должна быть пустая строка, которая помечена значком звездочки (*) в области выделения записи слева. Тогда в эту строку можно вводить данные, которые создадут новую запись. Если такая строка отсутствует, добавлять записи в запрос и изменять значения полей запроса нельзя.

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


 * Основные отличия запросов от расширенного фильтра:**

- используя реляционные связи, можно применять запрос к нескольким таблицам (запросам);

- на экран можно выводить только необходимые поля;

- в запросе можно переставлять поля в любом порядке;

- команды фильтра сохраняются временно, запрос хранится постоянно как объект базы данных;

- применение фильтра и сортировки возможно только в открытой таблице, запросе и форме, а запрос работает с таблицами и запросами, которые не надо открывать;

- в запросе можно выводить на экран только необходимые (по количеству или процентному соотношению) записи (например, для лучшей десятки продаж можно отсортировать сумму продаж по возрастанию, а в свойствах запроса «Набор значений» (в режиме конструктора) ввести число 10;

- фильтры не могут создавать вычисляемые поля.

Если запрос очень сложный, можно разбить его на несколько составных (т. е. запрос делает запрос к запросу). Добавляются поля в запрос либо двойным щелчком на имени поля, либо прямым перетаскиванием, либо выбором из списка в строке «Поле» бланка запроса. Таблицу можно добавить в бланк запроса простым перетаскиванием из окна базы данных.

При создании вычисляемого поля надо ввести название столбца, после него знак двоеточия, а затем вычисляемое выражение.


 * Нельзя добавлять и изменять записи в запросах, если:**

- две таблицы запроса связаны отношением "один-ко-многим" и в таблице "один" не задан первичный ключ;

- в запросе используются рекурсивные соединения (связь установлена между полями одной таблицы (запроса));

- в запросе применяются статистические функции SQL.


 * Условия, при которых можно добавить или обновить записи в запросе:**

- таблица является единственной в запросе;

- таблицы в запросе связаны отношением "один-к-одному";

- если таблицы в запросе связаны отношением "один-ко-многим", можно изменять поля только в таблице "многие".


 * Групповые операции (перекрёстные запросы)**

При помощи перекрёстного запроса вычисляются итоговые значения (суммы, количество значений, минимальные и максимальные значения и т. д.) данных и группируются по заголовкам столбцов и по заголовкам строк. Анализ информации значительно упрощается. В перекрёстном запросе обычно три поля: поле заголовка столбцов, поле заголовка строк и поле итогового содержимого ячеек. По умолчанию строка «Групповая операция» в режиме конструктора скрыта.


 * Управляющие запросы**

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

Ресурсы: http://www.access-video.ru/index.php/stati/29-sozdanie-zaprosov.html

См.также: http://informatika.delayu.ru/Zadanija/Accesszaprosy http://www.lessons-tva.info/edu/e-inf2/m2t4_4.html http://www.taurion.ru/access/4/4 http://mmtc.vgta.vrn.ru/Subjects/Upr-dan/Sozdanie_zaprosov_v_Access.htm