double arrow

Задание 3. Контрольный пример


Целью данного примера является дополнение созданной БД Студент новой таблицей Результаты с результатами сессии. Затем объединение этих таблиц.

1. Рассмотрим создание таблицы в Режиме Конструктора.

Для этого в окне Access выбираем из меню Файл - Открыть базу данных, затем в окне открытия файла БД выбираем имя БД Студент - Открыть. Теперь в окне БД Студент нажимаем кнопку Конструктор..

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

Для создания таблицы необходимо, как минимум, заполнить графы Имя поля и Тип данных. Графа Описание не является обязательной и предназначена для текста подсказки, который выводится в нижней строке экрана во время работы с таблицей Чтобы задать тип поля, надо щелкнуть в соответствующей ячейке в столбце Тип данных. Это приведет к появлению символа раскрытия списка справа в выбранной ячейке. Надо открыть его и выбрать нужный тип.

2. Заполним имена полей с их типами:

Код тип Счетчик

Группа текстовый тип

Номер зачетной книжки числовой тип

Фамилия текстовый тип

3. Оценки Предмет1, Предмет2, ПредметЗ, Предмет4 - числовой тип.

4. Создадим составной ключ, выделив строки Группа, Номер зачетной книжкииФамилия, затем нажав на кнопку с изображением ключа или Правка – Ключевое поле.

5. Закроем окно Конструктора. На предупреждение о сохранении макета таблицы ответить Да. Задать имя таблицы Результаты.

6. Откроем эту таблицу в окне БД, выделив имя, затем нажав кнопку Открыть.

7. Заполним записи открывшейся таблицы.

Так как в новой таблице четыре первых столбца повторяют соответствующие столбцы существующей таблицы Анкета, скопируем данные этих столбцов во вновь создаваемую таблицу через буфер обмена. Для этого:

§ в окне БД выделить таблицу Анкета, затем - Открыть. Чтобы перейти в это окно (окно БД), надо щелкнуть по видимой части этого окна или переместить окно таблицы Результаты чуть ниже.

§ выделить столбцы: Код, Группа, Номер зачетной книжки, Фамилия.

§ скопировать их в буфер обмена.

§ закрыть таблицу Анкета.

§ установить курсор на имя первого столбца таблицы Результаты.

§ вставить из буфера обмена в таблицу Результаты скопированные данные.

8. Откроем окно Конструктора. При вводе значений оценок по Предметам надо заполнить Условие на значение на вкладке Общие (в нижнем окне Конструктора)- требование к вводимым данным в это поле . Оценки по предметам не могут быть больше 5 и меньше 1. Это условие записывается в виде выражения (формулы): > 0 < 6. При вводе других значений в это поле выдается сообщение об ошибке или стандартное или в виде текста, заданного пользователем.




9. Закроем окно Конструктора

10. Введем оценки по предметам.

В случае необходимости можно добавить новые записи.

11. Таблицу Результатызакроем.

12. Необходимо в таблице найти записи с заданной фамилией. Поскольку таблицы часто бывают длинными, необходимо иметь средство для перехода к нужной записи. В такой ситуации часто используют фильтр. Для применения фильтра необходимо:

§ выделить в поле Фамилияфамилию Шарипов.

§ нажать кнопку Применить фильтрна панели инструментов или выбрать команду Фильтр- Применить фильтр.Из таблицы будет высвечена только запись с фамилией Шарипов.

Для того, чтобы увидеть таблицу целиком, надо нажать кнопку Удалить фильтрна панели инструментов или в меню Записи - Удалить фильтр.

13. Необходимо выбрать из таблицы всех отличников. Для этих целей опять воспользуемся фильтром.

В тех случаях, когда условие фильтрации формируется достаточно сложно, применяется расширенный фильтр. Его окно активизируется нажатием кнопки Расширенный фильтрили командой Записи - Фильтр - Расширенный фильтр. В данном случае окно разбивается на две панели.

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



При фильтрации можно ввести критерий на некоторые столбцы таблицы. В этом случае значения полей Предмет1, Прдемет2, ПредметЗ, Предмет4 в одной строке Условия отбора будут равны пятерке (5). Фильтрация отбирает записи, удовлетворяющие всем заданным условиям (объединение по И). Затем надо щелкнуть правой кнопкой мыши вне бланка, из контекстного меню выбрать Применить фильтр.

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

Чтобы высветить всю таблицу, надо щелкнуть кнопку на панели инструментов Удалить фильтр

14. Отфильтруем записи, чтобы были высвечены записи неуспевающих. Действия как в предыдущем пункте, только значения оценок - двойка (2) - надо набрать по нескольким строкам Условия отбора, т.е. фильтрация записей будет объединена по ИЛИ.

15. Теперь надо создать между таблицами Анкета и Результаты связь один - к -одному. Существуют связи (отношения):

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

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

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

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

. Наши таблицы должны быть связаны по полям: Группа, Номер зачетной книжки и Фамилия. Для определения связи между двумя таблицами (таблица Анкета будет первичной, Результаты - связанной таблицей) проделаем следующие действия:

§ нажать кнопку Схема данных ( или Сервис - Схема данных) , затем Связи - Добавить таблицу. В окне Добавление таблицы выбираем таблицу Анкета - Добавить, затем выбираем Результаты - Добавить.

§ Закрыть окно Добавление таблицы.

§ в окне Схема данных надо переместить с помощью мыши поля Группа, Номер эачетной книжкииФамилия из таблицы Анкета на эквивалентные поля таблицы Результаты. Для того, чтобы переместить сразу несколько полей, следует предварительно нажать CTRL и выбрать имена полей. Обычно связывают ключевое поле одной таблицы с аналогичным полем в другой таблице.

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

§ выберем параметры связи. Надо наложить условие целостности данных и установить между двумя таблицами отношение один - к - одному.

§ для создания связи надо нажать кнопку Создать.

§ закончив создание связи, закроем окно диалога Схема данных с сохранением связи в этой БД

Для изменения связи надо установить указатель на линию связи и дважды нажать кнопку мыши. Открывается окно Диалога Связи. Внести изменения в связь и нажать кнопку ОК. Для удаления связи надо выбрать линию связи (щелкнуть на линии связи) и нажать клавишу DEL. Для создания другой связи удаляем старые связи в окне Схема данных: Правка - Очистить макет.

16. Создадим Простойзапрос на выборку сначала отличников, затем неуспевающих.

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

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

Для создания Запросанадо перейти в окно БД, нажать вкладку Запросы,затем кнопку Создать.(Или из меню Вставка - Запрос).В появившемся окнеНового запросавыбрать Конструктор, Ок.В окне Добавление таблицыактивизировать таблицу Результаты,нажать кнопку Добавить,затем Закрытьэто окно.

Открывается бланк запроса, похожий на бланк фильтрации. На верхней панели - имена полей текущей таблицы. На нижней панели надо заполнить Полявыборки (выбрать последовательно имена полей текущей таблицы, переходя от столбца к столбцу, нажав кнопку раскрытия списка) и одну строку Условия отбора.(Значения полей Предметыравны 5). Из контекстного меню верхней панели выбрать Режим таблицыили нажав кнопку Режим таблицына панели инструментов. В окне сформированного запросаувидим отобранные записи отличников. При закрытии этого окна появляется сообщение о сохранении запроса. Если результат запроса удовлетворяет, надо его сохранить, задав имя запроса: Отличники.

Чтобы выбрать неуспевающих, надо задать двойки в разных строках Условия отбора.

17. Объединим две таблицы, используя простой запрос.Предварительно между таблицами должна быть связь один- к- одному:связаны Группа, Номер зачетной книжкии Фамилия.В окне Нового запроса Добавитьобе таблицы. Затем выбрать Простой запрос- ОК.В окне Простого запросавыбрать из таблицы Анкета всеполя, нажав на кнопку >> ( таким образом выбираются все поля ), а из таблицы Результаты- поля Предметы,нажимая на кнопку > (так выбираются отдельные поля). Далеевыбрать подробный вывод по каждому полю каждой записи. Если некоторые поля не надо высвечивать в объединенной таблице, то в строке Вывод на экранснимите флажок. Далее задать имя запроса. Нажать Готово.На экране появится объединенная таблица, в которой присутствуют выбранные поля обеих таблиц со значениями этих полей.

18. Объединим две таблицы, используя Запросв режиме Конструктора.

§ Открыть вкладку Запросы -Создать – Конструктор. Открывается окно Запроса, состоящее из двух панелей.

§ Открывается окно Добавление таблицы. Если оно не открылось, то нажать соответствующую кнопку на панели инструментов. Надо выбрать таблицы Анкета и Результаты, поля которых должны входить в объединенную таблицу. Между объединяемыми таблицами предварительно должна быть установлена связь. Закрыть окно Добавление таблицы. Выбранные таблицы со связями располагаются на верхней панели окна Запроса.

§ На нижней панели в первом столбце строки Имя таблицы щелкнуть левой кнопкой мыши. Появляется кнопка раскрытия списка таблиц. Нажав на эту кнопку, выбрать имя таблицы Анкета, поля которой должны входить в объединенную таблицу. Щелкнуть левой кнопкой мыши в первом столбце строки Поле. Нажав на кнопку раскрытия списка полей, выбрать поле, которое будет первым полем в объединенной таблице.

§ Щелкнуть левой кнопкой мыши во втором столбце строки Поле. Нажав на кнопку раскрытия списка полей, выбрать поле, которое будет вторым полем в объединенной таблице и т. д., пока не выберутся нужные поля из таблицы Анкета.

§ Так же нужно выбрать необходимые поля из таблицы Результаты, заполняя следующие поля объединяемой таблицы.

§ Войти в Режим таблицы, нажав соответствующую кнопку на панели инструментов или из контекстного меню верхней панели выбрать Режим таблицы. В окне Таблицы появляется объединенная таблица -Запрос, поля и значения полей которой сформированы из таблиц Анкета и Результаты

§ Сохранить Запрос, задав имя Анкета+Результаты.

19. Закрыть БД Студент.

20. Выйти из Access.

Заказать ✍️ написание учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

Сейчас читают про: