Практическая
работа. «Проектирование структуры многотабличной БД и ее создание с помощью
СУБД».
·
Многотабличные БД используют во избежание
замедления процедуры обработки из-за избыточности информации и дублирования
различных записей во многих полях;
·
Нормализация данных это процесс приведения таблиц
к третьей нормальной форме:
1.
Все данные, которые планируется включить в БД,
представляются в табличной форме (первая нормальная форма);
2.
Определяют главный ключ или два и все поля, не
зависящие от него, выделяют в отдельную таблицу (вторая нормальная форма);
3.
Выделяют поля, частично зависящие от главного
ключа и создают следующую таблицу, устанавливают связь между таблицами – это
обеспечивает целостность базы данных(третья нормальная форма).
Задание
1. Создадим базу данных, которая будет хранить экзаменационные оценки учащихся.
Ход
работы:
Можно обойтись и одной
таблицей, в которую включить поля «Фамилия», «Имя», «Предмет», «Учитель»,
«Оценка». Но тогда очень много данных будет повторяться.
Поэтому
создайте три таблицы — «Ученики», «Предметы», «Оценки» — и заполните их. В
первых двух таблицах первое поле будет иметь тип счетчик, а остальные —
текстовый тип. В третьей таблице первое поле будет иметь тип счетчик, а
остальные — числовой тип.
Таблица «Ученики»: Таблица «Предметы»:
Код ученика
|
Фамилия
|
Имя
|
1
|
Антонова
|
Марина
|
2
|
Бирих
|
Яков
|
3
|
Волков
|
Константин
|
4
|
Волошина
|
Светлана
|
5
|
Кашина
|
Наталья
|
6
|
Лени
|
Алексей
|
7
|
Матвеев
|
Роман
|
8
|
Наумова
|
Татьяна
|
9
|
Юдинцева
|
Оксана
|
Код предмета
|
Название
|
Учитель
|
1
|
алгебра
|
Иванова
|
2
|
история
|
Петрова
|
3
|
физика
|
Воронцова
|
4
|
химия
|
Степанова
|
Таблица «Оценки»:
|
Код оценки
|
Код ученика
|
Код предмета
|
Оценка
|
1
|
1
|
1
|
5
|
2.Щелкните на пиктограмме Схема данных. Вы увидите
созданные нами таблицы и связи, которые создал Access. Он автоматически
связал поля с одинаковыми именами и совместимыми типами. В других случаях это
можно сделать вручную, с помощью мыши — достаточно перетащить одно поле
на другое.
3.Обратите внимание, что выставлять оценки неудобно.
Чтобы выставить Волкову «отлично» по алгебре, надо помнить коды ученика и
предмета. К счастью, Access может оперировать с кодами, а информацию выдавать
в текстовой форме. Сделаем это для
предметов.
Выберите в таблице «Оценки» поле «Код предмета» и укажите
тип Мастер подстановок. В качестве таблицы источника данных выберите таблицу «Предметы» и
поля «Код предмета» и «Название». Теперь в режиме таблицы будут видны названия предметов.
4.Сделайте то же самое для фамилий
учеников. А теперь сделайте так, чтобы подстановка выполнялась из двух полей,
то есть выводились
фамилия и имя. Для этого выберите поле «Код ученика», вкладку Подстановка,
затем выберите Источник строк и щелкните на кнопке с многоточием справа. Откроется построитель
запросов, работа с которым не отличается от работы
с обычным запросом. Вместо поля
«Фамилия» введите строку [Фамилия]&" "&[Имя]. Теперь будет
видна и фамилия ученика, и его имя.
5.Добавьте сведения еще о двух-трех учениках в
таблицу «Ученики». Перейдите в таблицу «Оценки». Обратите внимание, что информация о добавленных учениках оказалась в
конце списка. Чтобы упорядочить список по алфавиту, вызовите построитель запросов для поля «Код ученика» и
установите сортировку по возрастанию. Сделайте то же самое для поля «Код предмета».
6.Поле «Код оценки» нам (в отличие от Access)
неинтересно. Выделите этот столбец в режиме таблицы и выберите команду Формат, Ширина столбца. Установите ширину столбца равной нулю. Этого же результата можно
добиться перетаскиванием правой
границы столбца к левой.
7.Обратите внимание, что Access позволяет
хранить несколько записей о сдаче одним и тем же учеником одного и того же
предмета. Сделаем так, чтобы набор «ученик-предмет» стал уникальным. Для этого
в режиме конструктора установим для этих полей
опцию ключевое поле. Это можно сделать с помощью меню Правка или панели
инструментов.
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.