- •1. Основные положения
- •1.1. Организация базы данных
- •1.2. Просмотр записей базы данных
- •Задание
- •2.1. Домашняя подготовка
- •2.2. Порядок выполнения задания в лаборатории
- •3. Требования к отчету
- •4. Контрольные вопросы
- •Вопросы для защиты
- •Лабораторная работа 2
- •1. Основные положения
- •1.1. Файлы субд
- •Основные операции над файлами
- •Сортировка и индексирование записей таблиц
- •2. Задание
- •2.1. Домашняя подготовка
- •2.2. Порядок выполнения задания в лаборатории
- •3. Требования к отчету
- •4. Контрольные вопросы
- •4.1. Вопросы для коллоквиума
- •4.2. Вопросы для защиты
- •Лабораторная работа 3 язык запросов sql субд Visual FoxPro
- •1. Основные положения
- •Запросы
- •Задание
- •2.1. Домашняя подготовка.
- •2.2. Порядок выполнения задания в лаборатории.
- •3. Требования к отчету.
- •4. Контрольные вопросы
- •Вопросы для защиты
- •Проектирование баз данных в среде Erwin
- •Основные положения
- •Процесс моделирования
- •Физическая и логическая модель данных
- •Уровни отображения модели
- •Обратное проектирование
- •Целевые платформы
- •Интерфейс eRwin. Уровни отображения модели
- •Подмножества модели и сохраняемые отображения
- •Создание логической модели данных. Уровни логической модели
- •Сущности и атрибуты
- •Создание физической модели данных
- •Выбор сервера
- •Задание
- •Домашняя подготовка
- •Порядок выполнения в лаборатории
- •Требования к отчету
- •Контрольные вопросы Вопросы для коллоквиума
- •Вопросы для защиты
Лабораторная работа 2
РАБОТА С ФАЙЛАМИ СУБД. СОРТИРОВКА И ИНДЕКСИРОВАНИЕ
Целью работы является изучение способов и приобретение практических навыков работы с файлами данных. Рассматриваются основные операции языка СУБД FOXPRO по манипулированию файлами, сортировке и индексированию записей таблиц.
1. Основные положения
1.1. Файлы субд
Файлы СУБД FOXPRO являются стандартными файлами операционной системы MS DOS или Windows.
Имена файлов MS DOS имеют длину до 8 символов, Windows- до 128. Разновидности файлов: файлы данных .DBF , файлы временных переменных .MEM , командные файлы .PRG , файлы отчетов .FRХ , текстовые файлы .TХT , форматные .FMT , индексные .IDX и .CDX, примечаний (memo-поле) .FPT , страховая копя примечаний .TBK , страховые копии .BAK , сгенерированная программа запроса .QPR , откомпилированная программа запроса .QPX, сгенерированная программа меню .MPR, сгенерированная программа меню .MPX и другие.
Основные операции над файлами
К числу основных операций над файлами можно отнести следующие операции: копирование, изменение структуры таблицы, переименование, удаление файла, получение списка имен файлов, имеющихся на диске.
В данной лабораторной работе рассматриваются некоторые из перечисленных пераций.
Для копирования открытого таблицы используется команда COPY TO.
Синтаксис этой и других команд языка СУБД FOXPRO приведен в Help СУБД.
Структура таблицы может быть скопирована с помощью команды COPY STRUCTURE.
Команда COPY FILE позволяет копировать закрытые файлы любого типа. Имена файлов в этом случае следует указывать с расширением.
Для удаления файлов можно использовать команды DELITE FILE или ERASE. Имя файла должно быть задано с расширением и файл не должен быть открытым.
Переименование файлов проводится с помощью команды RENAME. Имена файлов указываются с расширением.
Информация о файлах, находящихся на диске, может быть получена с помощью команд DIR, DISPLAY/LIST FILES.
Для изменения структуры таблиц БД используется команда MODIFY STRUCTURE. Эта команда позволяет добавлять/удалять поля записей, изменять имена, типы и длины полей.
Следует учитывать, что СУБД обеспечивает изменение типа числового поля в символьное.
Допускается преобразование типа логических полей в символьные, полей дат в символьные и обратные преобразования с помощью соответствующих функций.
При использовании команды MODIFY STRUCTURE СУБД создает копии таблицы и примечаний с расширением .DBT и .TBK соответственно.
Сортировка и индексирование записей таблиц
Для упорядочения записей таблицы используется сортировка или индексирование. Команда сортировки SORT TO создает новую таблицу файла базы данных, в котором записи основного таблицы отсортированы в алфавитном, хронологическом или числовом порядке по заданным ключевым полям.
Индексирование таблицы проводится с помощью команды INDEX ON.
Различают простые индексы и мультииндексы.
Выражение ключа индекса может представлять собой одно поле или любое, допустимое в СУБД, выражение, не включающее логические поля, поля примечаний и общие поля.
Если выражение ключа индекса включает несколько полей, требуется приведение значений полей к одному типу.
При создании выражения ключа индекса наиболее часто используются функции STR(), CTOD(), DTOC(), YEAR(), MONTH(), DAY() и VAL().
При выполнении операции индексирования, физического переупорядочивания записей таблицы не происходит. Индексированный файл (индекс) должен использоваться совместно с файлом базы данных для обработки записей в заданном порядке.
Индекс поддерживает заданный порядок записей таблицы до тех пор, пока индекс открыт.
Открыть ранее созданные индексы можно командой SET INDEX TO [<список индексов>].
Первый (главный) индекс в списке определяет порядок обработки записей (если неиспользуется команда SET ORDER TO).
Главный индекс также задает выражение ключа индекса, по которому можно указать значение для поиска с помощью команд FIND и SEEK. С помощью команды SET ORDER можно присвоить функции главного индекса любому другому из открытых индексов. В команде SET ORDER нужно указать целое число , определяющее соответствующий открытый индекс в списке файлов текущей рабочей области.
Командой SET INDEX TO закрываются все открытые индексы в текущей рабочей области. В этих же целях можно использовать команду CLOSE INDEX.
При обновлении таблицы выполняется автоматическое внесение изменений во все индексы этой таблицы (команда REINDEX).
При работе с индексированной таблицей команда INSERT эквивалентна команде APPEND.
Открыть одновременно таблицу и индексы в рабочей области можно командой: USE [<имя файла>] [SET INDEX <список индексов>] . . .
Команда USE без параметров закрывает активную таблицу и связанные с ней индексы в текущей рабочей области.