Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Базы данных-1.pdf
Скачиваний:
18
Добавлен:
06.02.2018
Размер:
614.28 Кб
Скачать

3. ФОРМИРОВАНИЕ ЗАПРОСОВ К БАЗЕ ДАННЫХ

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

Запрос с параметрами – это запрос, при выполнении которого в его диалоговом окне пользователю выдается приглашение ввести данные, например условие для возвращения записей или значение, которое должно содержаться в поле. Можно создать запрос, в результате которого выводится приглашение на ввод нескольких данных, например двух дат. В результате будут возвращены все записи, находящиеся между указанными двумя датами. Также запросы с параметрами удобно использовать в качестве основы для форм и отчетов. Например, на основе запроса с параметрами можно создать месячный отчет о доходах. При выводе данного отчета на экране появится приглашение ввести месяц, доходы которого интересуют пользователя. После ввода месяца на экране будет представлен требуемый отчет.

В перекрестном запросе отображается значение поля либо результаты статистических расчетов (суммы, количество записей и средние значения), выполненных по данным из одного поля таблицы. Эти результаты группируются по двум наборам данных, один из которых расположен в левом столбце таблицы, а второй – в верхней строке. Существует возможность вывести данные

вперекрестной таблице без создания в базе данных отдельного запроса. Для этого следует использовать мастер сводных таблиц. В сводной таблице пользователь имеет возможность изменять заголовки строк или столбцов, что позволяет анализировать данные различными способами.

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

Взадании предлагается создать два многотабличных запроса на выборку

врежиме конструктора запросов. Далее преобразовать их в SQL и объединить оператором UNION. Для этого исходные запросы должны иметь совпадающие схемы (заголовки результирующих таблиц) и различную семантику (различные наборы исходных таблиц). Перед объединением рекомендуется преобразовать исходные запросы:

создайте конструктором запрос на выборку; нажмите на панели инструментов кнопку раскрытия списка рядом

с кнопкой Вид и выберите Режим SQL. Microsoft Access выводит эквивалентную инструкцию SQL для запроса, созданного в режиме конструктора;

удалите из запроса предложение INNER JOIN, перенеся условия соединения таблиц из этих предложений в предложение WHERE. После преобразования запрос должен остаться эквивалентным исходному (совпадающие наборы кортежей в результате). Внимание: если опять вернуться в режим конструктора, то запрос может быть искажен;

11

сформируйте перекрестный запрос, используя две таблицы для формирования значений заголовков по вертикали и по горизонтали соответственно,

атретью таблицу используйте для заполнения соответствующих ячеек в рабочей области запроса. Для этого предварительно надо будет создать простой запрос, объединяющий все поля перекрестного запроса;

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

Пользуясь режимом ввода SQL команд, выполните следующие операции:

создайте временную таблицу БД с определением ключевых полей;

создайте связь этой таблицы с существующими таблицами БД с определением ограничений целостности;

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

удалите связи для временной таблицы;

удалите временную таблицу.

Замечание. Перечисленными командами надо будет пользоваться при работе с СУБД, не имеющей полноценного графического интерфейса.

12

4. РАЗРАБОТКА ФОРМ

Пользователь имеет возможность создать форму самостоятельно в режиме конструктора или воспользоваться мастером. Мастер форм ускоряет процесс создания формы, так как автоматически выполняет всю основную работу. При использовании мастера Microsoft Access выдает приглашение на ввод данных, на основе которых создается форма. В созданных формах мастер можно использовать для быстрого создания элементов управления в форме. Для настройки и редактирования формы следует переключиться в режим конструктора.

Создание формы с помощью мастера:

в окне базы данных выберите вкладку Создать;

в диалоговом окне выберите Мастер форм;

выберите имя таблицы или запроса, содержащих данные, на основе которых будет создана форма. При использовании Мастера форм источник дан-

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

Если были выбраны Мастер форм, Диаграмма или Сводная таблица, то при создании формы следуйте инструкциям, выводимым в диалоговых окнах соответствующего мастера. При выборе элементов автоформы в столбце ленточная или табличная форма создается автоматически.

Создание формы с помощью конструктора:

в окне базы данных выберите вкладку Создать;

в диалоговом окне выберите пункт Конструктор форм;

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

Создание подчиненной формы. Способ создания подчиненной формы за-

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

Одновременное создание формы и подчиненной формы. Прежде чем выполнять описанные ниже действия, проверьте, что правильно определены связи между таблицами.

Влюбом окне Microsoft Access нажмите кнопку раскрытия списка рядом

скнопкой Новый объект и выберите команду Форма.

Вокне диалога Новая форма выберите Мастер форм и дважды нажмите

кнопку мыши.

В первом окне диалога мастера выберите таблицу или запрос из списка. Например, для создания формы Типы, имеющей подчиненную форму, в которой отображаются товары каждого типа, выберите таблицу Типы (на стороне

один отношения один-ко-многим).

13

Выберите двойным нажатием кнопки мыши поля этой таблицы или запроса, которые следует включить в форму.

Втом же окне диалога мастера выберите другую таблицу или запрос из списка. Используя тот же пример формы Типы, выберите таблицу Товары (со стороны многие отношения один-ко-многим). Безразлично, какую таблицу или запрос выбирать первой.

Выберите двойным нажатием кнопки мыши поля, которые следует включить из этой таблицы или запроса.

Если до запуска мастера связи установлены правильно, то после нажатия кнопки Далее предлагается выбрать таблицу или запрос, используемые для представления данных.

Втом же окне диалога мастера выберите параметр Подчиненные формы. Выполните необходимые действия в остальных окнах диалога мастера.

После нажатия кнопки Готово будут созданы две формы: одна главная, содержащая элемент управления подчиненная форма/отчет, а вторая подчиненная, которая будет выводиться в этом элементе управления.

Создание подчиненной формы и добавление ее в существующую форму (подчиненная форма должна допускать редактирование данных). Преж-

де чем выполнять описанные ниже действия, проверьте, что правильно определены связи между таблицами.

Откройте форму, к которой нужно добавить подчиненную форму, в реж и- ме конструктора формы.

Нажмите кнопку Подчиненная форма/отчет на панели элементов. В форме выберите место, в которое следует поместить подчиненную форму.

Следуйте указаниям в окнах диалога мастера.

После нажатия кнопки Готово Microsoft Access элемент управления подчиненной формы добавляется в форму. Создается также отдельная форма, которая будет выводиться в элементе управления подчиненной формы.

Добавление формы в другую существующую форму для создания формы с подчиненной формой. Прежде чем выполнять описанные ниже действия, проверьте, что правильно определены связи между таблицами.

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

Убедитесь, что нажата кнопка Мастера на панели элементов. Переместите с помощью мыши форму или таблицу из окна базы данных

в главную форму.

Элемент управления подчиненной формы добавляется в форму. Если перемещенная форма выводилась в режиме формы, подчиненная форма выводится в этом режиме. Если перемещенная форма выводилась в режиме таблицы, подчиненная форма выводится в режиме таблицы.

Вконце создания формы производится корректировка ее внешнего вида

сиспользованием конструктора.

14

Соседние файлы в предмете Базы данных