в поле окна Схема данных появятся образы двух таблиц; при нажатой левой кнопке мыши перетащить ключевое поле КОД_ФКТ из таблицы ФАКУЛЬТЕТЫ на это же поле в таблице СПЕЦИАЛЬНОСТИ;
в открывшемся окне Связи последовательно активизировать флажки Обеспечить целостность данных, Каскадное обновление связанных полей и Каскадное удаление связанных записей. Тип связи «один ко многим» будет выбран автоматически;
выполнить команду Создать;
сохранить схему и закрыть окно.
ФАКУЛЬТЕТЫ
1
СПЕЦИАЛЬНОСТИ
КОД_ФКТ
ФАКУЛЬТЕТ
ЭКЗАМЕН_1
ЭКЗАМЕН_2
ЭКЗАМЕН_3
КОД_СПЕЦ
СПЕЦИАЛЬНОСТЬ
КОД_ФКТ
ПЛАН
9. Ввести данные в таблицу ФАКУЛЬТЕТЫ. Для этого:
в окне Access выделить название таблицы ФАКУЛЬТЕТЫ;
выполнить команду Открыть;
на экране появятся бланк таблицы, содержащий заголовки и пустую строку; ввести три строки (данные трех факультетов):
КОД_ФКТ
ФАКУЛЬТЕТ
ЭКЗАМЕН_1
ЭКЗАМЕН_2
ЭКЗАМЕН_3
01
экономический
математика
география
русский язык
02
исторический
история Отечества
иностранный язык
сочинение
03
юридический
русский язык
иностранный язык
обществознание
10. Аналогично заполнить таблицу СПЕЦИАЛЬНОСТИ. Ввести шесть строк – данные о шести специальностях:
КОД_СПЕЦ
СПЕЦИАЛЬНОСТЬ
КОД_ФКТ
ПЛАН
101
финансы и кредит
01
25
102
бухгалтерский учет
01
40
201
история
02
50
203
политология
02
25
310
юриспруденция
03
60
311
социальная работа
03
25
11. Создать таблицу АБИТУРИЕНТЫ следующей структуры:
Имя поля
Тип поля
РЕГ_НОМ
текстовый
КОД_СПЕЦ
текстовый
МЕДАЛЬ
логический
СТАЖ
числовой
12. Организовать связь таблицы АБИТУРИЕНТЫ с таблицей СПЕЦИАЛЬНОСТИ через поле КОД_СПЕЦ.
13. Создать таблицу АНКЕТЫ следующей структуры:
Имя поля
Тип поля
РЕГ_НОМ
текстовый
ФАМИЛИЯ
текстовый
ИМЯ
текстовый
ОТЧЕСТВО
текстовый
ГОРОД
текстовый
ДАТА_РОЖД
дата
УЧ_ЗАВЕДЕНИЕ
текстовый
14. Организовать связь таблиц АНКЕТЫ и АБИТУРИЕНТЫ через поле РЕГ_НОМ.
Пояснение: Таблица АНКЕТЫ содержит семь полей, которые не вмещаются в ширину экрана. Поэтому в данном случае для заполнения таблицы удобно использовать форму:
15. Создать форму для ввода и просмотра таблицы АНКЕТЫ:
перейти на вкладку Формы, выполнить команду Создать;
выбрать способ создания формы: Мастер форм;
выбрать таблицу АНКЕТЫ;
переместить все поля таблицы из окна Доступные поля в окно Выбранные поля, щелкнуть на кнопке Далее;
включить кнопку В один столбец, щелкнуть на кнопке Далее;
выбрать стиль формы Обычный, щелкнуть на кнопке Далее;
задать имя формы: оставить имя «АНКЕТЫ»; включить кнопку Открытие формы для просмотра и ввода данных, щелкнуть на кнопке Готово.
16. Ввести записи в таблицу АНКЕТЫ с помощью формы. Содержание таблицы:
РЕГ_НОМ
ФАМИЛИЯ
ИМЯ
ОТЧЕСТВО
ГОРОД
ДАТА_
РОЖД
УЧ_ЗАВЕДЕНИЕ
1012
Васильева
Ольга
Николаевна
Пермь
12.10.81
ПТУ № 8
1023
Быков
Алексей
Ильич
Кунгур
24.04.82
Школа № 7
1119
Круг
Борис
Моисеевич
Пермь
18.09.82
Школа № 102
1120
Листьев
Дмитрий
Владимирович
Березники
01.12.81
Школа № 5
2010
Елькин
Виктор
Алексеевич
Елабуга
20.07.82
ПТУ № 1
2015
Мухин
Олег
Иванович
Березники
25.03.78
Школа № 77
2054
Григорьева
Наталья
Дмитриевна
Пермь
14.02.80
Школа № 3
2132
Зубова
Ирина
Афанасьевна
Пермь
22.11.81
Школа № 96
3005
Анохин
Сергей
Петрович
Пермь
30.03.82
Школа № 12
3034
Жакин
Николай
Якимович
Пермь
19.10.81
Школа № 12
3067
Дикий
Илья
Борисович
Березники
28.12.77
Школа № 3
3118
Ильин
Петр
Викторович
Кунгур
14.07.80
ПТУ № 8
17. Создать форму для ввода и просмотра таблицы АБИТУРИЕНТЫ.
18. Ввести записи в таблицу АБИТУРИЕНТЫ. Содержание таблицы:
РЕГ_НОМ
КОД_СПЕЦ
МЕДАЛЬ
СТАЖ
1012
101
ИСТИНА
1
1023
101
ЛОЖЬ
0
1119
102
ИСТИНА
0
1120
102
ИСТИНА
0
2010
201
ЛОЖЬ
0
2015
203
ЛОЖЬ
3
2054
203
ИСТИНА
2
2132
201
ЛОЖЬ
0
3005
310
ЛОЖЬ
0
3034
311
ЛОЖЬ
1
3067
310
ЛОЖЬ
3
3118
310
ЛОЖЬ
2
Пояснение: В Access логическое значение ИСТИНА обозначается галочкой, заключенной в квадратик, ЛОЖЬ – пустым квадратом.
19. Создать таблицу ИТОГИ следующей структуры:
Имя поля
Тип поля
РЕГ_НОМ
текстовый
ЗАЧИСЛЕНИЕ
логический
20. Связать таблицы ИТОГИ и АБИТУРИЕНТЫ через поле РЕГ_НОМ.
21. Ввести в таблицу данные в следующем виде:
РЕГ_НОМ
ЗАЧИСЛЕНИЕ
1012
1023
1119
1120
2010
2015
2054
2132
3005
3034
3067
3118
Пояснение: В дальнейшем, после проведения приемной комиссией зачисления абитуриентов в университет по результатам приемных экзаменов, в графу ЗАЧИСЛЕНИЕ будет выставлено значение ИСТИНА (галочки в квадратах) для зачисленных абитуриентов.
Проверь себя
Если ты правильно установил все связи, то должно получится примерно следующее:
Практическая работа №2
Реализация простых запросов с помощью конструктора
Цель работы: освоение приемов реализации запросов на выборку с помощью конструктора запросов Microsoft Access.
Основные понятия
Запрос - это обращение к БД для поиска или изменения в базе данных информации, соответствующей заданным критериям.
С помощью Access могут быть созданы следующие типы запросов: запросы на выборку, запросы на изменение, перекрестные запросы, запросы с параметром.
Одним из наиболее распространенных запросов является запрос на выборку, который выполняет отбор данных из одной или нескольких таблиц по заданным пользователем критериям, не приводящий к изменениям в самой базе данных.
Простой запрос - создает простой запрос из определенных полей.
Конструктор запросов – высокоуровневое средство формирования запросов в СУБД Access, которое можно рассматривать как пользовательскую оболочку к языку запросов SQL. Для формирования запроса в конструкторе используется табличная форма.
Окно конструктора запросов представлено на рисунке.
Поле схемы запроса – верхняя часть окна конструктора запросов, куда помещаются схемы таблиц, данные из которых используются в запросе.
Бланк запроса – таблица в нижней части окна. Столбцы относятся к полям, участвующим в формировании запроса. В первой строке указываются имена всех этих полей. Вторая строка – имя таблицы, из которой извлекается соответствующее поле. Третья строка – признак сортировки (может не использоваться). Флажки в пятой строке отмечают признак вывода данного поля на экран при выполнении запроса. В следующих строках формируется условие отбора.
Задание 1
Построить и выполнить запрос к базе данных «Приемная комиссия»: получит список всех экзаменов на всех факультетах. Список отсортировать в алфавитном порядке названия факультетов.
Для его выполнения достаточно одной таблицы ФАКУЛЬТЕТЫ. Команда (на гипотетическом языке) для такого запроса имеет вид:
в открывшемся окне Новый запрос выбрать Конструктор, щелкнуть на кнопке ОК.
2. В поле схемы запроса поместить таблицу ФАКУЛЬТЕТЫ. Для этого в окне Добавление таблицы, на вкладке Таблицы выбрать название таблицы Факультеты, щелкнуть на кнопках Добавить и Закрыть.
3. Заполнить бланк запроса: ввести в бланк данные, показанные на рисунке ниже.
4. Выполнить запрос – команда Запрос Запуск. На экране появится таблица следующего вида:
ФАКУЛЬТЕТ
ЭКЗАМЕН_1
ЭКЗАМЕН_2
ЭКЗАМЕН_3
исторический
история Отечества
иностранный язык
сочинение
экономический
математика
география
русский язык
юридический
русский язык
иностранный язык
обществознание
5. Сохранить запрос; выполнить команду Запрос Сохранить; в диалоговом окне, запрашивающем имя запроса, ввести «Список экзаменов» и подтвердить сохранение.
6. Сменить заголовки граф запроса.
Пояснение.
Заголовками граф полученной ранее таблицы являются имена полей. Это может не устраивать пользователя. Имеется возможность замены их на любые другие надписи, при этом имена полей в БД не изменятся. Делается это через параметры Свойства поля для полей соответствующей таблицы.
Для этого нужно снова открыть конструктор для таблицы ФАКУЛЬТЕТЫ. В списке свойств каждого поля добавить в строке Подпись соответствующий текст. Например, в поле ФАКУЛЬТЕТ сделать подпись «Факультеты». В поле ЭКЗАМЕН_1 ввести подпись «1-й экзамен» и т. д. После этого вернуться к запросу «Список экзаменов».
Выполнив команду Открыть, получим таблицу с результатом запроса, которая от предыдущей таблицы отличается лишь заголовками:
Факультеты
1-й экзамен
2-й экзамен
3-й экзамен
исторический
история Отечества
иностранный язык
сочинение
экономический
математика
география
русский язык
юридический
русский язык
иностранный язык
обществознание
Задание 2
Требуется вывести список всех специальностей с указанием факультета и плана приема. Отсортировать список в алфавитном порядке по двум ключам: названию факультета (первый ключ) и названию специальности (второй ключ).
Пояснение.
В таком случае сортировка сначала происходит по первому ключу и, в случае совпадения у нескольких записей его значения, они упорядочиваются по второму ключу. Для выполнения этого запроса потребуются две таблицы: ФАКУЛЬТЕТЫ и СПЕЦИАЛЬНОСТИ.
В результате исполнения запроса должна получится следующая таблица:
Факультеты
Специальности
План приема на дневное отделение
исторический
история
50
исторический
политология
25
экономический
бухгалтерский учет
40
экономический
финансы и кредит
25
юридический
социальная работа
25
юридический
юриспруденция
60
Сохранить запрос под именем «Список специальностей»
Обратите внимание на надписи к графам этой таблицы. Выполните необходимые действия для приведения надписей к такому виду.
Задание 3
Получить список абитуриентов (Ф.И.О.), родившихся в 1982 году. Указать факультет и специальность, на которую они поступают. (Имя запроса: 1982 год).
Получить список всех абитуриентов, поступающих на юридический факультет, имеющих производственный стаж. Указать фамилию, город, специальность и стаж. Упорядочить по фамилиям. (Имя запроса: юрфак).