Контрольная работа по дисциплине «базы данных»




Скачать 456.13 Kb.
НазваниеКонтрольная работа по дисциплине «базы данных»
страница8/11
Дата публикации23.04.2013
Размер456.13 Kb.
ТипКонтрольная работа
skachate.ru > Информатика > Контрольная работа
1   2   3   4   5   6   7   8   9   10   11
^

2. Индексирование баз данных



Важнейшим элементом любой системы управления базами дан­ных является наличие средств ускоренного поиска данных, по­скольку поиск - самая распространенная операция в системах об­работки данных. Этот механизм обычно реализуется введением так называемых индексных файлов (индексов). Они имеют расширение имени IDX или CDX.

Если файл проиндексирован, команды DISPLAY, EDIT, BROWSE, SKIP, REPLACE и все другие команды, связанные с движением в базе данных, перемещают указатель записей в соот­ветствии с индексом, а не с физическим порядком расположения записей. Так, команды GO TOP и GO BOTTOM устанавливают указатель записей не на первую (номер 1) и последнюю физические записи, а на начальную и конечную записи индекса соответственно.

Один файл базы данных может быть проиндексирован по нескольким полям и иметь любое число индексов (индексных фай­лов), которое ограничено только дисковой памятью компьютера. Индексные файлы содержат информацию о расположении записей фай­ла базы данных в алфавитном, хронологическом или числовом по­рядке для того поля/полей, по которому выполнено индексирова­ние. Допускается индексирование и по логическим полям. Расширение индексного файла – IDX.

Размер индексного файла сравним с объемом ди­скового пространства, занимаемого полем базы данных, по кото­рому было произведено индексирование. Таким образом, например, если база проиндексирована по всем полям, суммарный размер всех индексов будет близок (или больше) к размеру всей базы данных. Кро­ме того, замедляются операции ввода/редак-тирования данных в базе, поскольку при дополнении ее новой записью индексный файл должен быть автоматически перестроен в соответствии с новыми или изме­ненными данными.

Индексирование выполняется следующей командой:

  • INDEX ON <выр>ТО

[FOR <условие>] [COMPACT] [DESCENDING]

[UNIQUE] [ADDITIVE]

^ Опции команды:

<выр> - индексный ключ-выражение. Его длина может достигать 100 символов для IDX-файлов и 240 для CDX-файлов. Чаще всего ключ это имя поля, по которому нужно упорядочить файл. Однако, ключ может быть и составным - из нескольких полей. Он может быть и функцией полей и переменных.

ТО - дает имя одноиндексному файлу.

FOR <условие> - устанавливает режим отбора в индекс только тех записей базы данных, которые отвечают заданному <условию>. При наличии такого, действующего, как фильтр, индекса доступ к нужным данным осуществляется исключи­тельно быстро.

COMPACT - с этой опцией будет создан компактный IDX-файл. Целесообразно использовать только компактные индексы

Для IDX-файлов индексирование всегда осуществляется по возрастанию, однако параметр DESCENDING можно включить в команды открытия индексов любого типа, независимо от того, какой закон был указан в команде индексирования. По умолчанию индексирование выполняется по возрастанию.

UNIQUE - означает, что, если в базе данных встречаются записи с одинаковым значением ключа, все такие записи, кроме первой, игнорируются (не включаются в индекс). Этим процессом можно управлять также с помощью команды SET UNIQUE TO.

ADDITIVE - вновь создаваемые индексные файлы не закроют уже открытые к этому моменту. По умолчанию вновь создаваемые индексы закрывают все ранее открытые индексы для текущей базы данных.

Пример. Пусть мы хотим упорядочить базу KADR в порядке возрастания табельных номеров. Тогда необходимо создать ин­дексный файл по полю TAB. Назовем его KADRTAB.IDX.

USE kadr

INDEX ON tab TO kadrtab

LIST tab,fam

Record # TAB FAM

3 6 КУЛАКОВА М.И.

1 13 СИДОРОВ П.С.

7 54 ЯКОВЛЕВ А.И.

2 98 ПОТАПОВ Д.П.

4 234 ПОПОВ А.А.

6 468 МИРОНОВ Р.И.

5 890 РОМАНОВА М.С.

Как видно, команда LIST показала записи именно в желаемом, а не в фактическом порядке. Файл базы KADR.DBF никакому изменению не подвергся, но всеми перемещениями указателя запи­сей управляет теперь индексный файл KADRTAB.IDX.

Каково содержимое индексного файла? Хотя в FoxPro не пред­усмотрена какая-либо возможность непосредственного доступа к индексу, мы можем просмотреть его во внутреннем текстовом ре­дакторе FoxPro (с помощью команды MODIFY FILE KADTRAB.IDX). Тогда мы увидим, что кроме технической ин­формации в заголовке файл KADRTAB.IDX будет содержать зна­чения ключевого поля TAB индексируемой базы данных, располо­женные в порядке возрастания, и (в закодированной форме) факти­ческие номера этих записей в базе данных. В нашем случае

3-6, 1-13, 7-54, 2-98, 4-234 и т.д.

Пример. Рассмотрим включение FOR-условия в команду ин­дексирования. Пусть требуется создать индексный файл KADRPOL.IDX, содержащий ссылки только на те записи базы KADR.DBF, которые соответствуют всем мужчинам (роl='М'), причем упорядоченные в алфавитном порядке фамилий.

USE kadr

INDEX ON faro TO kadrpol FOR pol='M' COMPACT

LIST FAM, POL

Record # FAM POL

6 МИРОНОВ P.И. M

4 ПОПОВ А.А. М

2 ПОТАПОВ Д.П. М

1 СИДОРОВ П.С. М

7 ЯКОВЛЕВ А.И. М

Видим, что содержание и порядок предъявления записей из базы KADR.DBF отвечают желаемым.

Если порядок предъявления фамилий безразличен и по ним не предполагается поиск, ключевое поле (в данном случае FAM) мож­но опустить, заменив его пробелом в команде индексирования

INDEX ON ' 'TO kadrpol FOR pol='M' COMPACT

При этом индексный файл будет меньших размеров.

Если индексный файл был уже создан, его нужно открыть при внесении новых записей или редактировании старых (если затраги­ваются индексные поля) и, конечно, если предполагается индексный поиск. Индексные файлы могут быть открыты совместно с открытием своей базы данных () командой:
USE [INDEX <список индексных файлов>
Команды SET INDEX открывает только индексы (база должна быть уже открыта):

SET INDEX TO [<список индексных файлов>

Команда SET INDEX TO без параметра закрывает все индексные файлы, кроме структурного, для текущей базы. Такое же действие осуществляет команда

CLOSE INDEX
1   2   3   4   5   6   7   8   9   10   11

Похожие:

Контрольная работа по дисциплине «базы данных» iconРабота с резервной копией базы данных пк «Школьный офис» (методические рекомендации)
Резервное копирование базы данных осуществляется с целью защиты введенной информации от потери в случае повреждения базы данных,...
Контрольная работа по дисциплине «базы данных» iconКурсовая работа по дисциплине «Базы данных в информационных системах»
Формы как средство добавления, просмотра, удаления, изменений параметров базы данных
Контрольная работа по дисциплине «базы данных» iconЛабораторная работа №5 По дисциплине: «Сетевые базы данных»
Составить и выполнить программу pl/sql, которая считывает из базы данных среднюю величину всех заказов после 03. 01. 2009 г., и выводит...
Контрольная работа по дисциплине «базы данных» iconКонтрольная работа по дисциплине Базы данных Требования к выполнению контрольной работы
...
Контрольная работа по дисциплине «базы данных» iconКонтрольная работа по дисциплине «Проблемно-ориентированные вычислительные системы»
Цель работы: выполнить анализ предметной области, построить еr-модель базы данных, составить проекты таблиц для их создания в базе...
Контрольная работа по дисциплине «базы данных» icon1. Базы данных в Rational Rose
Но когда дело доходит до разработки базы данных, то широко распространенной практикой является создание моста из case-средства, реализующего...
Контрольная работа по дисциплине «базы данных» iconМетодические указания для выполнения лабораторных работ и курсового...
Лабораторная работа №1 «Построение структуры базы данных»
Контрольная работа по дисциплине «базы данных» iconМетодические указания для выполнения лабораторных работ по дисциплине «Базы данных и знаний»
Базы данных – это организованная структура, предназначенная для хранения информации
Контрольная работа по дисциплине «базы данных» iconКурсовая работа по предмету «Базы Данных». Тема: 21. Разработка базы данных зоопарка
«Общими указаниями по организации, методике проведения и правилам оформления курсовых проектов и работ»
Контрольная работа по дисциплине «базы данных» iconПояснительная записка Контрольно-измерительные материалы по дисциплине «Базы данных и субд»
Контрольно-измерительные материалы по дисциплине «Базы данных и субд» предназначены для проверки знаний студентов 3-го курса математического...

Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2014
контакты
skachate.ru
Главная страница