запрос с параметрами;
перекрестный запрос;
запросы SQL (запросы на объединение, запросы к серверу. Управляющие запросы. подчиненные запросы).
Наиболее распространенным запросом является запрос на выборку, который осуществляет отбор данных из одной или нескольких таблиц в соответствии с заданными критериями, Как правило. в этом случае ответ на запрос представляет собой список отобранных объектов с их полным или частичным описанием.
Процесс формирования запроса можно представить в виде следующей схемы:
Порядок формирования запроса в бланке:
1. Перенести в строку "Поле" из списка полей таблиц (ы) имена полей, на которые накладываются условия и/или значения которых необходимо отобразить в ответе на запрос.
2. В строке "Сортировка" указать вид упорядочения по данному полю (если оно необходимо).
З. В строке "Вывод на экран" поставить маркеры для тех полей, значения которых необходимо вывести на экран.
4. В строке "Условие отбора" и последующих строках задать критерии отбора в виде логических выражений. Использовать "Построитель", вызывая его нажатием кнопки
Примечание. Критерии отбора для разных полей в одной строке связываются логической операцией "И", а критерии отбора в разных строках - "Или".
Использование построителя выражений облегчает процесс записи выражений и - позволяет избежать ошибок, так как позволяет пользователю выбирать элементы выражения: имена полей, операции, функции и т п., и на их основе конструировать выражение. Окно построителя изображено на рис.
Результат выполнения запроса можно предварительно просмотреть в "Режиме таблицы" контекстного меню.
Задание 1. Составить календарь заключения договоров в феврале 2000 указан дату заключения, шифр договора. исполнителя и сумму. Вид запроса и ответ представлены на рис.
Вычисления в запросе.
Над отобранными в результате выполнения запроса данными можно производить вычисления, используя групповые функции: SUM (сумма), AVG (среднее значение), COUNT (количество), MIN (минимальное значение), МАХ (максимальное значение) и т.п. Отобранные данные могут быть разбиты на группы во значениям какого-либо поля (применяется функция группировки), и, для каждой такой группы вычисляются значения групповых функций по отдельным полям.
Порядок формирования запроса в бланке:
Внести в блок запроса дополнительную строку "Групповая операцию", используя кнопку ∑.
2. Перенести в строку "Поле" из списка полей таблиц (ы) имена полей, на которые накладываются условия, и/или относительно значений которых данные разбиваются на группы, и/или по которым вычисляются значения.
З. В строке "Условие отбора" и последующих строках задать критерии отбора в виде логических выражений.
4. В строке "Групповая операция" в "группировочных" полях указать способ разбиения на группы - функцию группировки (группировка - разбиение отобранных данных на группы, условие группа данных по критерию отбора), в обрабатываемых полях - нужную групповую функцию.
Примечание. Для определения количества записей, отвечающих условию отбора, целесообразно использовать функцию Count для ключевого поля (уникального атрибута), в строке "Групповая операция" для полей с критериями отбора указать значение "условие".
5. В строке "Сортировка" указать вил упорядочения по данному полю (если оно необходимо).
6. В строке "Вывод на экран" поставить маркеры для тех полей, значения которых необходимо вывести на экран.
7. Выполнить запрос. (Результаты вычислений помещаются в столбцы с именами <имя функции> <имя поля>).
Задание 2. Определить, какое количество договоров и на какую сумму было заключено в феврале 200 г. Вид запроса и ответ представлены на рис.
Задание З. Определить, какое количество договоров и на какую сумму заключено с каждым исполнителем в феврале 2000 г. Вид запроса и ответ представлены на рис.
Обновление значений полей. В течение "жизни" объекты претерпевают изменения, которые либо вносятся в информационное описание "из вне", либо определяются (вычисляются) на основе значений некоторых атрибутов. Для определения значений "вычисляемых" полей для группы отобранных записей в MS Access используют запрос на обновление.
Порядок формирования запроса на обновление:
1. Создать и проверить запрос на отбор данных.
2. Добавить в запрос поля, подлежащие обновлению (вычислению).
З. Добавить в бланк запроса строку "Обновление", используя команду Обновление из меню Запрос.
4. Внести в строку ‚<Обновление" для каждого из обновляемых полей выражение для вычисления его значения.
5. Выполнить запрос, подтвердив внесение изменений в основную таблицу. (Выдастся сообщение о количестве изменяемых записей)
Задание 4. Вычислить задержку по договорам, выполненным после 31 марта 2000 г. Вид запроса на обновление представлен на рис.
Организация связей между таблицами.
информация в базе данных, как правило, хранится в нескольких таблицах, что позволяет избежать дублирования информации. Между таблицами в базе данных существуют связи, которые позволяют согласовывать или объединять данные из нескольких таблиц. Связи между таблицами можно разбить на четыре типа с отношениями:
• один-к--одному:
• один-ко-многим;
• многие-к-одному;
• многие-ко--многим.
Связь с отношением один-к-одному. Эта связь в базах данных применяется редко. Как правило, она применяется в многопользовательских системах с целью обеспечения локального доступа в защиты информации. В качестве такой системы можно привести систему "Абитуриент", где анкетные данные в результаты сдачи вступительных экзаменов хранятся в разных таблицах, и связь между данными осуществляется на основе шифра абитуриента.
Связь с отношением один-ко--многим. Это связь между двумя таблицами, при которой одиночная запись одной таблицы может иметь множественные вхождения в другой. Такую связь иногда называют родительско-дочерней, Связь наиболее распространенная в базах данных.
Связь с отношением многие-к-одному. Это на самом деле та же связь, что и один-ко-многим, только взятая с другого конца.
Связь с отношением многие-ко-многим. Эта связь редко используется в базах данных. Она не может быть установлена непосредственно между двумя таблицами: требуется наличие промежуточной таблицы, через которую можно установить эту связь.
При описании связей между таблицами следует обеспечить целостность данных, что позволяет избежать ошибок при удалении записей из главной таблицы (откуда связь) и вводе данных в связную таблицу (куда связь). Когда таблицы связаны, одна из них обычно является предком, другая, с которой установлена связь, - потомком, Поэтому эти отношения называют "предок-потомок"). Сохранение целостности данных гарантирует, что в таблице никогда не появится "сирота" - запись-ребенок без записи-родителя. Могут быть бездетные родители, но никогда дети без родителей.
При организации связи между таблицами следует иметь в виду, что связываемые поля должны иметь один и тот же тип и одинаковые свойства (хотя бы размер) или быть, по крайней мере, согласованными.
Порядок создания связей между таблiщами1:
1. Вызвать окно схемы данных (Сервис Схема данных)
2. Добавить таблицы. (Если не появилось окно добавления таблиц, следует нажать кнопку Добавить.
З. Протянуть связь от поля главной таблицы к полю связной таблицы.
4. В появившемся окне "Связи" установить (если это необходимо) флажок в поле "Обеспечение целостности данных" и нажать кнопку "ОК".
5. Повторить п.3-4 для других таблиц.
б. Закрыть окно схемы данных, сохранить результаты.
Может возникнуть ситуация, когда необходимо "протянуть" связь от одного поля главной таблицы к двум полям связной таблицы. Например, от поля код таблицы "Контрагенты" к полям "ЗАК" и "Исполнитель". В этом случае в схему данных надо добавить главную таблицу дважды и "протянуть" связь от ключевых полей главной таблицы и ее копии к соответствующим полям связной таблицы.
Формы позволяют пользователю вводить данные в таблицы в удобном виде, без обращения к самим таблицам, а также выводить результаты запросов в красивом оформлении. В отличие от таблиц и запросов, которые лучше формировать вручную, формы удобно готовить с помощью средств автоматизации. для этого есть специальное средство - Автоформы, Существует три вида автоформ: в столбец, ленточные и табличные. Автоформа "в столбец" отображает все поля одной записи (она удобна для ввода и редактирования данных). "Ленточная" автоформа отображает одновременно группу записей - ее удобно использовать для вывода данных. Табличная форма ничем не отличается от таблицы, на которой она основана.
Для создания автоформы необходимо при открытой вкладке Формы в окне "База данных" воспользоваться кнопкой Создать, В открывшемся окне Новая форма выбирают тип автоформы и таблицу (или запрос), на которой она основывается.