Ключ представляет собой комбинацию полей, данные в которых однозначно определяют каждую запись в таблице. Простой ключ состоит из одного поля, а составной (сложный) — из нескольких полей. Поля, по которым построен ключ, называют ключевыми. В таблице может быть определен только один ключ. Ключ обеспечивает:
· однозначную идентификацию записей таблицы;
· предотвращение повторения значений ключа;
· ускорение выполнения запросов к БД;
· установление связи между отдельными таблицами БД; . .
· использование ограничений ссылочной целостности.
Ключ также называют первичным ключом или первичным (главным) индексом
Таблицы различных форматов имеют свои особенности построения ключей. Вместе с тем существуют и общие правила, состоящие в следующем.
-Ключ должен быть уникальным. У составного ключа значения отдельных полей (но не всех одновременно) могут повторяться.
- Ключ должен быть достаточным и не избыточным, т. е. не содержать поля, которые можно удалить без нарушения уникальности ключа.
В состав ключа не могут входить поля некоторых типов, например, графическое поле или поле комментария.
Отметим, что при создании и ведении БД правильным подходом считается задание в каждой таблице ключа даже в том случае, если на первый взгляд он не нужен. В примерах таблиц, которые приводятся при изложении мате риала, как правило, ключ создается, и для него вводится специальное авто инкрементное поле с именем Code ИЛИ Number.
Индекс, как и ключ, строится по полям таблицы, однако он может допускать повторение значений составляющих его полей, в этом состоит его основное отличие от ключа. Поля, по которым построен индекс, называют индексными. Простой индекс состоит из одного поля, а составной (сложный) — из нескольких полей.
Индексы при их создании именуются. Как и в случае с ключом, в зависимости от СУБД, индексы могут храниться в отдельных файлах или совместно с данными. Создание индекса называют индексированием таблицы.
Использование индекса обеспечивает:
· увеличение скорости доступа (поиска) к данным;
· сортировку записей;
· установление связи между отдельными таблицами БД;
· использование ограничений ссылочной целостности.