Часть 2. Установление связи между файлами. Поиск записей по различным критериям отбора
Цель лабораторной работы — изучение алгоритмов установления связи между файлами и поиска записей по различным критериям в FoxPro.
вызвать FoxPro;
установить вывод протокола в файл prt2#;
подключите протокол для вывода;
просмотреть файл prsn#, созданный в ходе лабораторной работы 1: USE st#\prsn# LIST;
Для установления связей 1-го типа (через номер записи) создать файл данных auto# (автомобили) или dogs# (собаки): CREATE st#\auto# или CREATE st#\dogs# с числом записей, не меньшим числа записей в PRSN#, со следующей структурой (или с другими полями и их атрибутами, на ваше усмотрение):
поле 1: Id, тип N, длина 2 - идентификационный номер;
поле 2: Model, тип С, длина 15 - модель;
поле 3: YearEd, тип N, длина 4 - год выпуска;
поле 4: Color, тип С, длина 10 - цвет;
поле 5: Body, тип С, длина 10 - тип кузова;
поле б: RegNu тип С длина 9 - регистрационный номер.
поле 1: Tуре, тип С, длина10 - порода;
поле 2: Year, тип N, длина 4 - год рождения;
поле 3: Color, тип С, длина 10 - окрас;
поле 4: Name, тип С, длина 10 - кличка.
Примечание: при желании данные таблицы могут быть заменены другими:
знакомые девушки;
домовладения;
банковские счета и пр.
ввести данные в файл AUTO# (или DOGS#);
распечатать структуру и содержимое файла auto# (или dogs#): LIST
закрыть все файлы с помощью команды CLEAR ALL
открыть файл prsn#: SELECT I USE st#\prsn# ALIAS pers
упорядочить записи в prsn#: INDEX ON id TO st#\id# SET ORDER TO TAG st#\id#
открыть файл auto# (или DOGS#): SELECT 2
установить связь между текущим файлом данных (prsn#) и файлом auto# (или dogs#) по номеру записи: SET RELATION TO id INTO pers
проверка установки записи: go 3 SELECT 1
Примечание: если номер записи в вашей базе prsn#.dbf не совпадает с 3, то повторите операцию, начиная с CLEAR ALL:
вывести на экран результаты и сравнить с предшествующими;
сформулировав критерий отбора по файлу Auto# (например, yeared<2000 и со1оr<>"белый"), выполнить команду LIST FIELDS pers->Name, Model, Color, Yeared, Regnum FOR yeared<2000.and.color<>[белый]
модифицировать критерий отбора, включив в него условия для файла prsn# (например, year<1965): LIST FIELDS pers->Name, pers->Year, Model, Color, Yeared, Regnum FOR pers->Year<1965.and.Yeared<2000.and.cо1оr<>"белый"
проиндексировать файл prsn# по полю sex: SELECT 1 INDEX ON sex TO st#\sex
выполнить индексный поиск по критерию sex= [M]: SEEK [M]
выполнить команду LIST WHILE SEX= [M]
Вывести на экран список автовладельцев с белыми автомобилями:
ввести критерий отбора по файлу auto# (например, auto->со1оr="белый"), критерий отбора должен включать ссылки на файл auto#: SELECT pers.name, auto.model, auto.regnum FROM pers, auto WHERE pers.id=auto.id.and.color= [белый] ORDER BY name TO SCREEN (вывод на экран)
Осуществить экспорт содержимого файла данных в текстовый файл ОС, создать копию незаполненного файла данных, импортировать содержимое текстового файла в «пустой» файл данных. Сделать соответствующие распечатки.
Отчет о лабораторной работе должен содержать:
краткое изложение вопросов связывания файлов и поиска;
распечатку протокола работы с комментариями.
2000>
Достарыңызбен бөлісу: |