Лабораторная работа №7 Торохова Света 2007 http://tms.ystu.ru  

Создание БД технологического назначения в СУБД VFoxPro, а также двух форм для  доступа к информации и запроса на поиск

1 Цель работы

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

2 Исходные данные

Создать базу данных для резцов из СТМ, таблица 4, стр.119 [3] (рисунок 1).

Подпись:   
Рисунок 1 – Исходные данные

3 Методика выполнения работы

3.1 Открываем Visual FoxPro (рисунок 2).

Подпись:  
Рисунок 2 – Окно программы

3.2 Нажимаем кнопку «New», появляется панель (рисунок 3) выбора типа создаваемого файла. Выбираем проект.

 

Подпись:  
Рисунок 5 – Окно «Project Manager»
Подпись:  
Рисунок 3 –Создание проекта

3.3 Предлагается сохранить проект (рисунок 4). Имя proj1.pjx.

Подпись:  
Рисунок 4 – Имя проекта

3.4 Открывается главное окно Project Manager (рисунок 5), в котором будет отображаться информация о всех файлах, привязанных к этому проекту.

3.5 Раскрываю ветку «Data», выбираю пункт «Databases», нажимаю «New» . Открывается окно с возможностями создания базы данных (рисунок 6).

Подпись:  
Рисунок 6 – Создание базы данных

3.6 Выбираю «New Database». Предлагается сохранить её (рисунок 7).

Подпись:  
Рисунок 8 – Добавление таблицы
Подпись:  
Рисунок 7 – Имя базы данных

3.7 После выбора имени (tor1.dbc) открывается окно дизайнера базы данных      (рисунок 8).

Подпись:  
Рисунок 9 – Создание таблицы

После нажатия на кнопку добавления таблицы появляется окно (рисунок 9), в котором выбираем ручное создание таблицы (New Table).

Подпись:  
Рисунок 10 – Структура таблицы

3.8 Сохраняем таблицу (tor1.dbf), открывается окно создания её структуры. Заполняю поля имен, типов, ширины полей под атрибуты таблицы (рисунок 10).

Подпись:  
Рисунок 11 – Предложение на ввод данных

После нажатия «ОК» появляется предложение ввести данные в таблицу сейчас (рисунок 11). Соглашаемся.

Подпись:  
Рисунок 12 – Заполненная структура

3.9 Заполненная в соответствие с описанной структурой таблица показана на рисунке 12.

3.10 Для внешнего представления содержимого таблицы существуют формы. На вкладке Project Managera выделяю пункт «Forms» (рисунок 13) и нажимаю кнопку «New».

Подпись:  
Рисунок 13 – Создание формы
Подпись:  
Рисунок 14 – Способ создания

3.11 Создаем форму с помощью мастера, выбирая соответствующую кнопку в окне, показанном на рисунке 14.

Подпись:  
Рисунок 15 – Выбор мастера

3.12 Создаем форму из отдельной таблицы, а значит, выбираем в окне, показанном на рисунке 15, Form wizard.

3.13 Процесс создания формы идет в 4 шага. На первом выбираются поля, которые будут добавлены в форму (рисунок 16). Перемещаем все поля из столбца доступных в столбец выбранных.

Подпись:  
Рисунок 17 – 2 шаг. Стиль формы
Подпись:  
Рисунок 16 – 1 шаг. Выбор полей

На втором шаге выбираем стиль формы (Embossed) и текстовое оформление кнопок (рисунок 17).

Подпись:  
Рисунок 18 – 3 шаг. Поле сортировки

На третьем шаге выбираем поле, по которому будут сортироваться записи (рисунок 18). Это будет высота резца (h).

Четвертый шаг – заключительный. Предлагается ввести имя формы tor1.scx (рисунок 19). С помощью радиокнопок выбираем возможность сохранения  и редактирования формы (Save form and modify it in the form designer).

 

Подпись:  
Рисунок 20 – Просмотр формы

3.14 Нажимаю кнопку Preview для просмотра формы.
Подпись:  
Рисунок 19 – 4 шаг

 Для выхода из просмотрщика (рисунок 20) нажимаю кнопку Return to wizard. Затем Finish (в окне, показанном на рисунке 19). Сохраняю форму.

Подпись:  
Рисунок 21 – Дизайнер форм

3.15 В окне Design manager выделяю название формы и нажимаю кнопку редактирования (Modify). Открывается дизайнер форм (рисунок 21).

3.16 С помощью поля Caption свойств поля изменяю имена полей на русские названия. Для этого выделяю поле, на нужной строке таблицы свойств щелкаю правой кнопкой мыши, выбираю Zoom (не обязательно) и изменяю имя поля на более привычное (рисунок 22). Затем проводим реорганизацию соседних окон, чтобы название помещалось полностью.

 

Подпись:  
Рисунок 22 – Редактирование имени формы

3.17 Частично отредактированная форма показана на рисунке 23.

Подпись:  
Рисунок 23 – Названия атрибутов изменены
Подпись:  
Рисунок 24 – Смена цвета фона

3.18 Изменим цвет фона на белый. Для этого в свойствах (рисунок 24) изменим значение BackColor на 255,255,255. Располагаю поля на листе.

Подпись:  
Рисунок 25 – Переименование формы

3.19 Файл формы можно переименовать в дереве проекта (пункт «Rename» контекстного меню). Это показано на рисунке 25.

Подпись:  
Рисунок 26 – Просмотр формы

3.20 Запускаю форму: Project manager/Forms/Run. Форма показана на рисунке 26. Такой таблицу базы данных будет видеть человек, не особо разбирающийся в её структуре.

Подпись:  
Рисунок 27 – Новый запрос

3.21 Создание запроса на поиск (рисунок 27). Выбираем Queries\New.

3.22 Затем выбираю «New Query».Необходимо выбрать таблицу, по которой будет вестись запрос (рисунок 28). После нажатия «Add» таблица добавляется.

Подпись:  
Рисунок 28 – Таблица для создания запроса по ней
Подпись:  
Рисунок 29 – Выбор полей

3.23 На вкладке Fields (рисунок 29) необходимо выбрать поля, отображаемых в результатах поиска. На этой вкладке названию поля приписывается таблица, чтобы различать одноименные поля разных таблиц.

3.24 Переходим на вкладку «Filter» (рисунок 30), где создаем логическое выражение для запроса. При этом появляется панель SQL, которая позволяет сгенерировать логическое выражение.

Допустим, необходимо найти в таблице строки, для которых значение высоты (h) больше 20 мм и ширина режущей кромки (a) не больше 18 мм.

Соответствующее SQL-выражение выглядит следующим образом:

Select Tor1.h, Tor1.a;

from tor1!tor1;

where Tor1.h > 20;

and Tor1.a <= 18.

 

Подпись:  
Рисунок 31 – Запуск запроса
Подпись:  
Рисунок 30 – Логическое выражение

3.25 Для запуска запроса в окне Project manager выбираю свой запрос (query1) и нажимаю Run (рисунок 31).

Подпись:  
Рисунок 32 – Результат поиска в базе данных

3.26 Появляется результат обработки запроса (рисунок 32).

3.27 Приступаем к задаче связывания двух таблиц. Создадим свободную таблицу, полями которой будут «Материал» (дублируется с основной таблицей) и твердость. Структура таблицы (material.dbf) показана на рисунке 33. По полю материала произведена индексация.

Подпись:  
Рисунок 33 – Создание структуры свободной таблицы

3.28 Содержимое таблицы показано на рисунке 34.

Подпись:  
Рисунок 34 –  Заполненная структура таблицы

3.29 Запускаю форму, в контекстном меню выбираю «Data Environment» (Окружение), что показано на рисунке 35.

Подпись:  
Рисунок 35 – Контекстное меню формы

Открывается окно, показанное на рисунке 36, в котором отображена структура основной таблицы. Щелкаю правой кнопкой мыши и выбираю добавление второй таблицы (Add).

Подпись:  
Рисунок 36 – Добавление таблицы для связывания

Выбираю в окне проводника (рисунок 37) название таблицы, которую буду добавлять и нажимаю «ОК».

Подпись:  
Рисунок 37 – Выбор таблицы

3.30 Таблица появляется в окне Data environment (рисунок 38).

Подпись:  
Рисунок 38 – Таблица добавлена

3.31 Для создания логической связи таблиц выделяю поле «mater» основной таблицы и перетаскиваю его на индексированное одноименное поле привязываемой таблицы. Отображается связь (рисунок 39), которую при необходимости можно удалить выделив и нажав Delete.

Подпись:  
Рисунок 40 – Добавление нового поля в форму

3.32 Добавляю новое поле («Твердость») в форму перетаскиванием его на свободное место формы из окна Data environment (рисунок 40).

Подпись:  
Рисунок 41 – Окончательный вариант формы
Подпись:  
Рисунок 39 – Логическая связь таблиц

Редактирую имя поля (рисунок 41).

3.33 Запускаю форму (рисунок 42). Она отображает данные двух связанных таблиц.

Подпись:  
Рисунок 43 – Командное окно
Подпись:  
Рисунок 42 – Запуск формы из связанных таблиц

3.34 Сохраним структуру главной таблицы в текстовый файл. Для  этого в командном окне запишем конструкцию, показную на рисунке 43.

Подпись:  
Рисунок 44 – Созданный текстовый файл со структурой таблицы

В результате в папке проекта будет создан текстовый файл tor1_stru.txt (рисунок 44).

Выводы

В ходе лабораторной работы была изучена программа Visual FoxPro, была создана база данных, форма для её более наглядного отображения, был выполнен запрос на поиск в этой базе. К основной таблице была привязана вторая, а также была создана общая форма представления информации для обеих таблиц. Было рассмотрено сохранение структуры таблицы в текстовый файл.