Методические рекомендации и задания для лабораторных работ по дисциплине «Вычислительные системы». Методические рекомендации и задания для лабораторных работ по ди. Методические рекомендации и задания для лабораторных работ по дисциплине Вычислительные системы
Скачать 150.5 Kb.
|
Копирование баз данныхМожно создавать новые базы данных, копируя не только структуру, но и сами данные. USE BD1COPY TO BDD - скопируется вся базаCOPY TO BDD1 FIELD AVT - скопируются все записи в поле AVTCOPY TO BDD2 FOR GOD=1992 - все записи по всем полям где год издания 1992 COPY TO BDD3 FIELD AVT FOR GOD=1992COPY TO BDD4 FIELD AVT FOR GOD=1992.AND.NAL=’есть’Таким образом можно создавать частичные базы данных для желаемых полей с заданными условиями. ФильтрЧастичные базы данных можно создавать также с помощью фильтра. Фильтр - это способ ограничения для просмотра больших баз данных. После введения фильтра из большой базы выводится только информация , удовлетворяющая заданным в фильтре условиям, а остальной как бы не существует, хотя на самом деле сама база никаким изменениям не подвергается. SET FILTER TO GOD>1990LISTБудет выдана информация только по книгам, выпущенным после 1990г. Если после включения фильтра дать команду COPY TO BDD то будет создана новая база, в которую войдут только книги, выпущенные после 1990г. Действие фильтра отменяется при выходе из БД, например, при переходе к другой БД - USE BDD1. Отменяется также заданием команды SET FILTER TO без указания условий. Установленный фильтр начинает действовать только в случае, если после команды SET FILTER TO <условия> произведено хоть какое-то перемещение указателя записей в файле БД (например, дана команда LIST, перемещающая этот указатель) При задании фильтра возможны логические условия SET FILTER TO STEL>112.AND.GOD>1990Заданный фильтр отменяется также заданием другого фильтра SET FILTER TO STEL>112 Сортировка базы данныхБаза данных для облегчения пользования ею может быть упорядочена по заданному закону, например, по алфавиту в поле авторов или по возрастанию или убыванию года издания или другим информационным признакам данных.Но упорядоченная база при этом создается как новая, т.е. каждая сортировка требует создания новой базы, следовательно каждая сортировка влечет за собой требования к месту размещения этой новой базы. Когда база маленькая об этом можно не думать, а если база большая, то количество признаков упорядочивания ограничивается объемами дисковой памяти компьютера. Примеры: USE BD1SORT TO BD2 ON AVT база BD2 отсортирована по алфавиту авторов SORT TO BD3 ON AVT/D обратная сортировка по алфавиту SORT TO BD4 ON STEL по номеру стеллажа в возрастающем порядке SORPT TO BD5 ON STEL/D в убывающем порядке SORT TO BD6 ON VOZVR по дате возврата в порядке возрастания Сортировка по нескольким полям: SORT TO BD7 ON STEL,NOM/D по возрастанию номера стеллажа, а внутри каждого стеллажа в порядке убывания номера ячейки. Сортировка базы позволяет ускорить в большой базе поиск нужной информации. Индексирование баз данныхВажнейшим элементом любой системы управления базами данных является наличие средств ускоренного поиска данных, поскольку поиск - самая распространенная операция в системах обработки данных. Этот механизм реализуется введением т.н. индексных файлов. Они имеют расширение IDX. Индексирование БД вводится для ускорения операции поиска данных. Для этой же цели можно применять сортировку БД по нужному поисковому ключу, но каждая сортировка создает новую БД размером с исходную. Реальные БД имеют большой размер и многократная их сортировка оказывается технически нереализуемой. Индексные файлы занимают принципиально меньший объем, поэтому для больших БД необходима именно индексация, поскольку в неупорядоченной базе поиск длится долго, а сортировка невозможна из-за ограничений в дисковой памяти. Если файл проиндексирован, команды DISPLAY,BROWSE,SKIP,REPLACE и все другие, связанные с движением в файле базы данных, перемещают указатель записей в соответствии с индексом, а не с физическим порядком расположения записей. В частности, команды GO TOP и GO BOTTOM устанавливают указатель записей не на первую и последнюю физические записи, а на начальную и конечную записи индексного файла соответственно. Один файл БД может быть проиндексирован по нескольким полям и иметь любое число индексов. Такие файлы не содержат сами записи, а содержат только указание на порядок их расположения в файле БД для того поля, по которому осуществлена индексация. Например, при индексации поля авторов в алфавитном порядке в индексном файле будут содержаться записи такого типа 1 - 3 справа номера записей в файле БД в поле AVT, 2 - 1 слева номера записей в индексном файле 3 - 5 для поля AVT и аналогично для других полей. Размер индексного файла сравним с объемом дискового пространства, занимаемого полем базы данных, по которому было произведено индексирование. Т.о. если база проиндексирована по всем полям, суммарный размер всех индексных файлов будет близок к размеру всей БД. При наличии многих индексов замедляются операции ввода и редактирования БД, т.к. при дополнении БД новой записью автоматически должны быть отредактированы все индексные файлы. Индексирование выполняется следующей командойINDEX ON <выражение> TO Предпоследняя опция создает компактный индексный файл, поэтому ею всегда надо пользоваться, это ускоряет поиск. Последняя опция обеспечивает сохранность уже созданных индексных файлов при открытии новых. По умолчанию вновь создаваемые индексы закрывают ранее открытые индексы для текущей БД. Индексированная база из текущей создается : |