Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СУБД ACCESS 2000.doc
Скачиваний:
37
Добавлен:
15.05.2015
Размер:
1.83 Mб
Скачать

Примеры выделения ключевых полей

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

Совет!Не забывайте создавать ключевые поля, не даром ключ является символомMSAccess

Рассмотрим примеры выделения ключевых полей.

Пусть в базе необходимо хранить данные об объекте Сотрудники, имеющим следующие атрибуты: фамилия, имя, адрес, телефон, табельный №, должность. Рассмотрим по порядку эти атрибуты

  1. Фамилия не может быть ключевым атрибутами, так как даже если сейчас нет однофамильцев нет никакой гарантии , что они не могут появиться в дальнейшем

  2. Те же причины заставляют отказаться от использования ключевого атрибута Имя

  3. К сожалению по тем же причинам нельзя использовать и составной ключ Фамилия + Имя

  4. Адрес и телефон не могут использоваться в качестве ключевых, так как возможно проживание нескольких сотрудников в одной квартире.

  5. Всегда существует несколько сотрудников , занимающих одну должность

  6. Табельный № -не содержит совпадений . Следовательно именно он может быть выбран в качестве ключевого поля

Графически это отображается следующим образом

В первой строке прямоугольника указывается имя таблицы и отделяется чертой от атрибутов (полей) таблицы

Жирным начертанием выделяется ключевое поле

ОбъектКлиентимеет следующие атрибуты : фамилия, имя, адрес, телефон, город. Ни один из этих атрибутов не может быть выбран в качестве ключевого. В качестве ключа будем использовать дополнительное поле счетчик Код Клиента

ОбъектТоварыимеет следующие атрибуты: наименование, фирма, цена ,вес. Ни один из этих атрибутов не может быть выбран в качестве ключевого. В качестве ключа будем использовать дополнительное поле счетчик Код Товара

Следующий пример – объектСтудентыимеет следующие атрибуты: №группы, №студента, фамилия, имя, год рождения, адрес. По известным причинам ни фамилия, ни имя, ни адрес, ни год рождения не могут быть выбраны в качестве ключевых. №группы также не может быть выбранным в качестве ключевого , так как в одной группе обучается больше одного студента. Атрибут №студента содержит порядковый номер студента в группе и в каждой группе имеется студент с номером 1, 2 и т.д. Следовательно ни один из этих атрибутов не может быть ключевым. Конечно можно добавить поле Код Студента, а можно воспользоваться составным ключом . В качестве составного ключа используем поля №группы и №студента, так как эта комбинация не содержит повторяющихся значений.