Использование индекса в базе данных Ms-Access

Почему индекс ускоряет выполнение запроса? Что делает индекс? В частности, в Access, если столбец объявляется как индекс, как он влияет на запрос?

Какие Идеи?

24
задан Coding Enthusiast
07.12.2022 0:02 Количество просмотров материала 2737
Распечатать страницу

2 ответа

Это очень сложный материал, поэтому я дам вам резюме.

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

индексирует хранение индексированное поле, и адрес хранения запись происходит в, в структуре данных дерева, которая оптимизирована для поиска (часто B-дерево), таким образом, что это берет очень немногие сравнения, чтобы перейти к структуре данных, найти желаемые индексированные данные, и затем получение адреса хранения, по которому хранится запись. Затем запись может быть получена сама.

таким образом, вместо чтения строки таблицы по строке, чтобы найти запись, мы спрашиваем индекс. индекс делает 3 считывания через B-дерево и находит индексируемый искомый элемент с адресом данных, привязанных к элементу, и затем возвращает адрес. Если ваша запись была 1024-й строкой в таблице, вы только что выполнили задачу в 4 чтениях, а не в 1025.

2
отвечен Frank Thomas 2022-12-08 07:50

из этой статьи Microsoft

создать и использовать индекс для повышения производительности

вы можете использовать индекс, чтобы помочь Microsoft Office Access быстрее находить и сортировать записи. Индекс хранит расположение записей на основе поля или полей, выбранных для индексирования. После того как Access получает расположение из индекса, он может получить данные, перемещаясь непосредственно в правильное расположение. Таким образом, использование индекса может быть значительно быстрее, чем сканирование всех записей для поиска данных.

0
отвечен wbeard52 2022-12-08 10:07

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя

Похожие вопросы про тегам:

microsoft-access
microsoft-access-2003
sql
vba
Вверх