Добавление индексов и отношений

Индексы - это специальные объекты, которые позволяют упорядочивать (сортировать) информацию в базе данных. Сам факт упорядочивания (создание индексов) существенно влияет на производительность СУБД. Индексы строятся по одному или нескольким полям таблицы, по которым обычно производится выборка или поиск информации. У одной таблицы может быть несколько индексов.

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

Как добавить индексы к таблице

1. Необходимо создать индексы для каждой таблицы с помощью метода CreateIndex объекта TableDef и установить их свойства. Количество создаваемых индексов будет соответствовать количеству ключевых полей.

Set StudIdx(0) = StudTd.CreateIndex("stud_key")

StudIdx(0).Primary = True

StudIdx(0).Unique=True

Set StudIdx(1) = StudTd.CreateIndex("key_town")

StudIdx(1).Primary = False

StudIdx(1).Unique=False

Set TownIdx = TownTd.CreateIndex("key_town")

TownIdx.Primary = True

TownIdx.Unique=True

2. Необходимо создать поле для каждого индексного объекта с помощью метода CreateField объекта Index

Set TempFlds(0)=StudIdx(0).CreateField("key_stud")

Set TempFlds(1)=StudIdx(1).CreateField("key_town")

Для TownIdx проделываем тоже самое

3.Необходимо присоединить поле к объекту Index и объект Index к объекту TableDef.

StudIdx(0).Fields.Append TempFlds(0)

StudIdx(1).Fields.Append TempFlds(1)

StudTd.Indexes.Append StudIdx(0)

StudTd.Indexes.Append StudIdx(1)

Для TownIdx проделываем тоже самое

Замечание. Поля, созданные методом CreateField объекта Index, не присоединяются к TableDef. Эти поля присоединяются к объекту Index причем с теми же именами, что и подлежащие индексированию поля TableDef.

Отношения и целостность ссылок.

Создание объектов TsbleDef с первичными и внешними ключами позволяет связывать записи в одной таблице с соответствующими записями в другой таблице, используя равенство значений первичного и внешнего ключе й. Чтобы эти отношения работали, необходимо поддерживать целостность ссылок при добавлении и удалении записей. Целостность ссылок означает, что внешний ключ в любой ссылающейся таблице всегда должен указывать на существующую запись в таблице, на которую производится ссылка.

Для поддержания целостности ссылок и предотвращения их повреждений в библиотеке Jet имеется объект Relation.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: