Первичный ключ
Для эффективной работы в Access каждая таблица в реляционной базе данных должна иметь первичный ключ. Для выбора первого ключевого поля таблицы в окне конструктора необходимо выделить это поле и нажать кнопку Ключевое поле на панели инструментов. В подтверждении того, что ключ задан, слева от поля появится символ ключа (рис.1.3). В качестве первичного ключа таблицы должно быть определено поле, в котором хранится уникальный код.
Для удаления первичного ключа нужно выделить ключевое поле и нажать кнопку Ключевое поле.
Преимущество использования первичного ключа:
-cкорость.Используя первичный ключ, Access создает индексы, позволяющие ускорить работу запросов и других функций;
-упорядочение. Access автоматически сортирует записи в порядке возрастания или убывания первичного ключа таблицы;
-отсутствие совпадений. Access не позволяет пользователю вводить данные с таким же первичным ключом, как и у существующей записи;
-связи. Access организует связи между таблицами, используя общий первичный ключ.
Определение связей между таблицами
После создания в базе данных Microsoft Access отдельных таблиц по каждой теме необходимо выбрать способ, которым Microsoft Access будет вновь объединять сведения таблиц. Первым делом следует определить связи между таблицами. После этого можно создать запросы, формы и отчеты для одновременного отображения сведений из нескольких таблиц.
Связь между таблицами устанавливает отношения между совпадающими значениями в ключевых полях, обычно между полями, имеющими одинаковые имена в обеих таблицах. В большинстве случаев с ключевым полем одной таблицы, являющимся уникальным идентификатором каждой записи, связывается внешний ключ другой таблицы.
Отношение «один-ко-многим» является наиболее часто используемым типом связи между таблицами. В отношении «один-ко-многим» каждой записи в таблице A могут соответствовать несколько записей в таблице B, но запись в таблице B не может иметь более одной соответствующей ей записи в таблице A.
При отношении «многие-ко-многим» одной записи в таблице A могут соответствовать несколько записей в таблице B, а одной записи в таблице B несколько записей в таблице A. Этот тип связи возможен только с помощью третьей (связующей) таблицы, первичный ключ которой состоит из двух полей, которые являются внешними ключами таблиц A и B. Отношение «многие-ко-многим» по сути дела представляет собой два отношения «один-ко-многим» с третьей таблицей.
При отношении «один-к-одному» запись в таблице A может иметь не более одной связанной записи в таблице B и наоборот. Отношения этого типа используются не очень часто, поскольку большая часть сведений, связанных таким образом, может быть помещена в одну таблицу. Отношение «один-к-одному» может использоваться для разделения очень широких таблиц, для отделения части таблицы по соображениям защиты, а также для сохранения сведений, относящихся к подмножеству записей в главной таблице.
Реляционные базы данных, как правило, состоят из нескольких таблиц, связи между которыми нужно определить. Определение связей необходимо при использовании таблиц в запросах, формах и отчетах.
Рис. 1.4. Схема данных БД Учебный процесс
Установление связей между таблицами.
Чтобы установить связи, нужно открыть окно базы данных и выбрать команду Сервис ® Схема данных. Если связи для базы данных устанавливаются впервые, то Access выведет на экран пустое окно Схема данных и затем окно диалога Добавление таблицы. В этом окне нужно выделить все таблицы, между которыми будут установлены связи и нажать кнопки Добавить и Закрыть. После этого в окне Схема данных связи между таблицами устанавливаются путем перетаскивания мышью поля одной таблицы на поле, по которому устанавливается связь, другой таблицы. При отпускании кнопки мыши на экран выводится окно диалога Связь, в котором выводятся связанные поля. Необходимо установить флажки: Обеспечение целостности данных, Каскадной обновление связанных полей, Каскадное удаление связанных записей. После этого нужно нажать кнопку Создать.
Установление флажка «Каскадное обновление связанных полей» позволяет:
- если в главной таблице СТУДЕНТ изменить значение поля Номер группы (например, вместо 11 написать 12), то и в подчиненных таблицах 11 поменяется на 12;
- если в таблице СТУДЕНТ изменить значение поля Номер группы на такое, которое нет в таблице ГРУППА, то это не удастся сделать.
Установление флажка «Каскадное удаление связанных записей» позволяет: если в таблице, например, ГРУППА удалить какую – либо группу, то и в подчиненных таблицах исчезнут все записи, связанные с удаленной группой.
При установлении связей между таблицами ключ связи может быть составной, например, связь между таблицами Успеваемость и Изучение осуществляется по нескольким полям. В этом случае установление связи осуществляется так: при нажатой клавише <Ctrl> выделяются все ключи и затем перетаскиваются. Чтобы удалить связь, нужно щелкнуть на ее линии и нажать клавишу Del.
Имена полей, по которым осуществляется связь между таблицами:
ГРУППА ® СТУДЕНТ ( Номер группы)
КАФЕДРА ® ПРЕПОДАВАТЕЛЬ ( Код кафедры)
ПРЕДМЕТ ® ИЗУЧЕНИЕ ( Код предмета)
ПРЕПОДАВАТЕЛЬ ® ИЗУЧЕНИЕ ( Таб номер)
ГРУППА ® ИЗУЧЕНИЕ ( Номер группы
СТУДЕНТ ® УСПЕВАЕМОСТЬ (Номер студента и Номер Группы)
ИЗУЧЕНИЕ ® УСПЕВАЕМОСТЬ (Номер Группы, Код предмета, Таб номер, Вид занятия)
Примечание. Если связь между таблицами не устанавливается, возможны следующие причины: а) имена полей, по которым устанавливается связь - различны б) типы связываемых полей - не одинаковы и др. Необходимо проверить все таблицы.
1. 5. Изменение проекта базы данных
Дата добавления: 2015-05-19; просмотров: 949;