 
        
        - •Разработка и реализация запросов (2004 г.)
- •Назначение и виды запросов.
- •1. На основе таблицы “Сводка” создать запрос, результатом которого будет таблица, содержащая 3 поля: название судна, длительность хода и стоянки.
- •Модификация данных с помощью запросов-действий.
- •Перекрестные запросы.
- •Подчиненные запросы.
Модификация данных с помощью запросов-действий.
Назначение запросов-действий: обновление и удаление группы записей, вставка данных из другой таблицы, создание новой таблицы.
Технология построения запроса на обновление: у судов Балтийский-5 увеличить количество перевезенного груза на 25%:
- создайте запрос выборку, используя условие отбора, например, выбрать суда типа Балтийский-5 
- преобразуйте запрос-выборку в запрос-действие, для этого, не выходя из окна запросов, выполните команду меню Запрос-Обновление 
- в результате изменится заголовок запроса и в бланке QBE появится строка обновление, в которую можно внести новое значение для поля, подлежащего изменению: [kol]*1,25. Щелкните по кнопке режим просмотра таблицы, чтобы просмотреть список тех записей, которые будут обновлены. 
- выполните созданный запрос-действие (команда Запрос-Выполнить, либо по кнопке с восклицательным знаком на панели инструментов). 
Особый случай возникает, когда обновляются значение первичного ключа. в таблице. Если эта таблица связана отношением «один-ко-многим», то при изменении первичного ключа должны одновременно изменяться значения внешних ключей во всех связанных записях дочерних таблиц.
Система отмечает запросы-действия специальными значками, изображения которых в окне базы данных содержат восклицательный знак.
Предположим, что каждый месяц надо удалять устаревшие данные из таблицы. Поэтому такой реквизит, как отчетный месяц необходимо ввести в запрос, как параметр. А далее изменить запрос-выборку на запрос- действие, как указано выше.
Перекрестные запросы.
Перекрестные запросы позволяют компактно отображать однородную информацию. Полученные таблицы удобны для создания диаграмм и графиков. В нашем примере можно построить запрос следующего вида:
| название судна | май | июнь | июль | август | сентябрь | октябрь | итого | 
| 
 | Tx | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
Рассмотрим процесс разработки запроса с помощью Мастера.
- В окне базы данных выберите ярлык Запросы и нажмите кнопку Создать. В окне Новый запрос выберите. Перекрестный запрос. 
- В диалоговом окне выберите таблицу или запрос, на основе которых Мастер создаст перекрестный запрос. В нашем примере выберем таблицу Сводка. Нажмите кнопка Далее. 
- В следующем окне выберите поле, значения которого будет использоваться в качестве заголовков строк. В нашем примере это поле ns. 
- В следующем окне выберите поле, значения которого будет использоваться в качестве заголовков столбцов. В нашем примере это поле mes. 
- В следующем окне укажите, значения какого поля должны находиться в ячейках результирующей таблицы. Выберите операцию обработки этих данных. Пусть это будет сумма ходового времени. Для нахождения суммы по строкам установите опцию Да в области Вычислить итоговое значение для каждой строки. 
