Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа №5 Создание таблиц MS Acces...doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
508.42 Кб
Скачать

Индексирование полей таблицы

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

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

Определение ключевого поля

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

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

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

Связи между таблицами

Таблицы могут быть связаны отношениями один–к–одному, один–ко–многим и многие–ко–многим. MS Access позволяет использовать только отношения первых двух типов.

При установлении связей нужно определить таблицу, какая является главной, а какая – подчиненной.

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

Наиболее часто используются отношения один–ко–многим. В этом случае одной записи в главной таблице соответствует несколько записей в подчиненной таблице.

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

Практическая часть

Задание 1. Создание таблиц в MS Access

Создать базу данных Университет на основе инфологической модели, приведенной на рисунке. База данных должна содержать 4 взаимосвязанных таблицы: Студент, Группа, Специальность и Факультет.

Поля таблицы Студент:

  • Номер зачетной книжки – ключевое поле числового типа, размер – длинное целое.

  • Номер группы – числовое поле, размер – целое.

  • Фамилия, Имя, Отчество – текстовое поле длиной 50 символов.

  • Дата рождения – поле типа «дата/время», краткий формат даты.

  • Коммерческий – логическое поле (да/нет).

Поля таблицы Группа:

  • Номер группы – ключевое поле числового типа, целое.

  • Номер специальности – числовое поле, длинное целое.

  • Номер факультета – числовое поле, байтовое.

  • Номер курса – числовое поле, байтовое.

Поля таблицы Факультет:

  • Номер факультета – ключевое поле числового типа, байтовое.

  • Наименование факультета – текстовое поле, 30 символов.

  • Декан – тестовое поле, 15 символов.

Поля таблицы Специальность:

  • Номер специальности – ключевое поле числового типа, длинное целое.

  • Наименование специальности – текстовое поле, 40 символов.

  • Стоимость обучения – денежного типа.