Замечание. Для составного ключа существенным может оказаться порядок образующих ключ полей
Для составного ключа существенным может оказаться порядок образующих ключ полей. Сортировка записей осуществляется в соответствии с порядком ключевых полей в окне Конструктора таблицы. Если необходимо указать другой порядок сортировки без изменения порядка ключевых полей, то сначала нужно определить ключ, а затем нажать кнопку Индексы (Indexes) на панели инструментов Конструктор таблиц (Table Design). Затем в появившемся окне Индексы (Indexes) нужно указать другой порядок полей для индекса с именем Ключевое поле (Primary Key).
Рассмотрим в качестве примера применения составного ключа таблицу "Заказано" (OrderDetails) базы данных "Борей" (Northwind) (рис. 2.25).
В данном случае в качестве составного ключа используются поля "Код заказа" (OrderlD) и "КодТовара" (ProductID), т. к. ни одно из этих полей в отдельности не гарантирует уникальность записи. При этом в таблице выводится не код товара, а наименование товара, т. к. поле "КодТовара" (ProductID) данной таблицы содержит подстановку из таблицы "Товары" (Products), а значения полей "КодТовара" (ProductID) этих таблиц связаны отношением "один-ко-многим" (одной записи таблицы "Товары" (Products) может соответствовать несколько записей таблицы "Заказано" (OrderDetails)). Оба поля могут содержать повторяющиеся значения. Так, один заказ может включать в себя несколько товаров, а в разные заказы могут включаться одинаковые товары. В то же время сочетание полей "КодЗаказа" (OrderlD) и "КодТовара" (ProductID) однозначно определяет каждую запись таблицы "Заказы" (OrderDetails).
Чтобы изменить ключ, необходимо:
1. Открыть таблицу в режиме Конструктора.
2. Выбрать имеющиеся ключевые поля.
3. Нажать на кнопку Ключевое поле(Primary Key), при этом кнопка должна принять положение Выкл.,а из области выделения должны исчезнуть значки ключевого поля.
4. Выбрать поле, которое необходимо сделать ключевым.
5. Нажать на кнопку Ключевое поле(Primary Key). При этом в области выделения должен появиться значок ключевого поля.
Рис. 2.25. Пример таблицы с использованием составного ключа
Чтобы удалить ключ, необходимо:
1. Открыть таблицу в режиме Конструктора.
2. Выбрать имеющееся ключевое поле (ключевые поля).
3. Нажать на кнопку Ключевое поле(Primary Key), при этом кнопка должна принять положение Выкл.,а из области выделения должен исчезнуть значок (значки) ключевого поля.
Создание и использование индексов
С целью ускорения поиска и сортировки данных в любой СУБД используются индексы. Индекс является средством, которое обеспечивает быстрый доступ киданным в таблице на основе значений одного или нескольких столбцов. Индекс представляет собой упорядоченный список значений и ссылок на те записи, в которых хранятся эти значения. Чтобы найти нужные записи, СУБД сначала ищет требуемое значение в индексе, а затем по ссылкам быстро отбирает соответствующие записи. Индексы бывают двух типов: простые и составные. Простые индексы представляют собой индексы, созданные по одному столбцу. Индекс, построенный по нескольким столбцам, называется составным. Примером составного индекса может быть индекс, построенный по столбцам "Фамилия" и "Имя".
Однако применение индексов приносит не только преимущества, но и недостатки. Главным среди них является тот, что при добавлении и удалении записей или при обновлении значений в индексном столбце требуется обновлять индекс, что при большом количестве индексов в таблице может замедлять работу. Поэтому индексы обычно рекомендуется создавать только для тех столбцов таблицы, по которым наиболее часто выполняется поиск записей. Во многих СУБД (например, FoxPro) индексы хранятся в отдельных файлах и являются предметом заботы разработчиков, т. к. при нарушении индекса поиск данных выполняется некорректно. В Microsoft Access индексы хранятся в том же файле базы данных, что и таблицы и другие объекты Access. Индексировать можно любые поля, кроме МЕМО-полей, полей типа Гиперссылка и объектов OLE.
Чтобы создать простой индекс, необходимо:
1. Открыть таблицу в режиме Конструктора.
2. Выбрать поле, для которого требуется создать индекс.
3. Открыть вкладку Общие(General) и выбрать для свойства Индексированное поле(Indexed) значение Да (Допускаются совпадения)(Yes (Duplicates OK)) или Да (Совпадения не допускаются)(Yes (No duplicates)) (рис. 2.26).
Рис. 2.26. Установка индекса для поля
Ключевое поле таблицы автоматически индексируется и свойству Индексированное поле(Indexed) присваивается значение Да (Совпадения не допускаются)(Yes (No duplicates)).
Составной индекс создается в специальном диалоговом окне. Чтобы создать составной индекс, необходимо:
1. Открыть таблицу в режиме Конструктора.
2. На панели инструментов Конструктор таблиц(Table Design) нажать кнопку Индексы(Indexes.)
3. В первой пустой строке (рис. 2.27) поля Индекс(Index Name) ввести имя индекса.
Рис. 2.27. Диалоговое окно Индексы
4. В поле Имя поля(Field Name) нажать на стрелку и выбрать первое поле, для которого необходимо создать индекс.
5. В следующей строке поля Имя поля(Field Name) указать второе индексируемое поле. (Для данной строки полеИндекс(Index Name) должно оставаться пустым.) Повторите эту операцию для всех полей, которые необходимо включить в индекс. В индексе может быть использовано до 10 полей
Дата добавления: 2015-06-10; просмотров: 1232;