Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИПОВС (2002) / Shimarik / Shimarik / Специальная часть.doc
Скачиваний:
28
Добавлен:
16.04.2013
Размер:
1.9 Mб
Скачать

2.3.3. Индексы

Для быстрого доступа к своему содержимому записи в таблице упорядочива­ются по значению одного или нескольких полей. Список полей, задающих порядок записей, называется индексом (index), а сами поля — ключевыми (index fields). Для одной таблицы может существовать несколько способов упорядочения записей, т. е. несколько индексов. Индексы играют огромную роль в "жизни" таблиц, без них при поиске информации приходилось бы перебирать подряд все записи таблицы.

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

Все остальные индексы таблицы являются вторичными (secondary), они зада­ют альтернативные способы упорядочения записей и могут быть неуникальны­ми. Например, в таблице заказов можно было бы построить вторичный индекс по полю Company, чтобы иметь возможность быстро отыскивать заказы одного покупателя.

В специальной части я описал все индексы в спроектированных базах. Как я уже отмечал, часть из них используется для быстрого поиска в базе (company_ind и др.), дугие для связи таблиц (см. табл. 1.15).

2.4. Средства работы с бд в Borland Delphi

2.4.1. Borland Database Engine

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

Перед разработчиками Delphi стояла задача обеспечить поддержку все наиболее популярных форматов баз данных, причем сделать это наиболя эффективно. Нужно признать, что компания Borland превосходно справилась с этой задачей, разработав промежуточный слой между файлами баз данных и приложениями, получающими из них информацию. Этот слой называете Borland Database Engine или, сокращенно, BDE.

Благодаря унифицированному программному интерфейсу BDE написанное на Delphi приложение может одинаково просто получать доступ и к локальным базам данных, расположенным на том же компьютере, и к удаленным базам данных, расположенным на удаленных серверах. Для работы с BDE почти ничего не нужно о нем знать, он инсталлируется вместе с Delphi и работает незаметно. Поскольку BDE — это необходимый элемент в базах данных, компания Borland прилагает к пакету Delphi неограниченные права на его поставку вместе с вашими собственными приложениями.

BDE предоставляет очень гибкий механизм управления базами данных. С его помощью можно напрямую работать с базами данных в формате Paradox, dBase и Local InterBase Server, через ODBC-драйверы — с базами данных в формате FoxPro и Access, через драйверы SQL Links — с серверными базами данных InterBase, Informix, Oracle, Sybase, Microsoft SQL Server. Драйверы SQL Links обеспечивают высокоэффективный доступ к удаленным базам данных, они включены в редакцию Delphi Client/Server Suite.