Рис.20 Форма запроса и результат
Текст запроса:
SELECT SUM(View_a.period)AS txt;
FROM pressa!view View_a;
WHERE View_a.period <= VAL(thisform.Text2.Value);
INTO CURSOR x
thisform.Text1.Value = txt
A = thisform.Text1.Value
SELECT SUM(View_a.period)AS txt2;
FROM pressa!view View_a;
INTO CURSOR xx
thisform.Text1.Value = txt2
B = thisform.Text1.Value
C = 100 * A
A = C / B
thisform.Text1.Value = A
· Найти все виды прессы поступившей из заданного издательства (ввод издательства), чья стоимость больше заданной (ввод стоимости);
Рис.21 Форма запроса(слева) и результат(справа)
Текст запроса:
SELECT View_a.price, View_a.vid;
FROM pressa!view View_a;
WHERE View_a.price > VAL(thisform.Text1.Value);
AND View_a.izdat = thisform.Combo1.Value
· Найти всю прессу поступившую от заданного издательства, чья стоимость больше, чем средняя стоимость заданной прессы (ввод наименования), поступившей из заданной страны (ввод наименования страны);
Рис.22 Форма запроса(сверху) и результат(снизу)
Текст запроса:
SELECT View_a.vid, View_a.name, View_a.izdat, View_a.strana;
FROM pressa!view View_a;
WHERE View_a.izdat = thisform.Combo3.value;
AND View_a.price > (SELECT AVG(View_a.price);
from pressa!view View_a;
where View_a.vid = thisform.Combo1.value);
AND View_a.Strana = thisform.Combo2.value
· Найти долю дешевой прессы (чья стоимость меньше заданной, ввод стоимости), поступившей от заданного издательства и в целом;
Рис.23 Форма запроса и результат
Текст запроса:
if thisform.check1.value = 1
SELECT SUM(View_a.price)AS txt;
FROM pressa!view View_a;
WHERE View_a.price <= VAL(thisform.Text2.Value);
INTO CURSOR x
thisform.Text1.Value = txt
A = thisform.Text1.Value
SELECT SUM(View_a.price)AS txt2;
FROM pressa!view View_a;
INTO CURSOR xx
thisform.Text1.Value = txt2
B = thisform.Text1.Value
C = 100 * A
A = C / B
thisform.Text1.Value = A
endif
if thisform.check1.value = 0
SELECT SUM(View_a.price)AS txt;
FROM pressa!view View_a;
WHERE View_a.price <= VAL(thisform.Text2.Value);
AND View_a.izdat = thisform.Combo1.Value;
INTO CURSOR x
thisform.Text1.Value = txt
A = thisform.Text1.Value
SELECT SUM(View_a.price)AS txt2;
FROM pressa!view View_a;
INTO CURSOR xx
thisform.Text1.Value = txt2
B = thisform.Text1.Value
C = 100 * A
A = C / B
thisform.Text1.Value = A
endif
· Найти среднюю стоимость прессы, проданной за определенный промежуток времени (ввод интервала);
Форма для запроса
Рис.24 Форма запроса(слева) и результат(справа)
Текст запроса:
SELECT AVG(View_a.price);
FROM pressa!view View_a;
WHERE View_a.period >= VAL(thisform.Text1.value);
AND View_a.period <= VAL(thisform.Text2.value);
· Найти всю прессу, чья стоимость выше, чем средняя стоимость прессы заданного издательства;
Рис.25 Форма запроса(слева) и результат(справа)
Текст запроса:
SELECT View_a.name, View_a.izdat, View_a.price;
FROM pressa!view View_a;
WHERE View_a.price > (SELECT AVG(View_a.price);
FROM pressa!view View_a;
WHERE View_a.izdat = thisform.Combo1.value)
· Найти прессу, которую лучше всего раскупают, указать параметры (стоимость, издательство и т.д.).
Рис.26 Форма запроса(слева) и результат(справа)
Текст запроса:
SELECT View_a.name, View_a.vid, View_a.Spros;
FROM pressa!view View_a;
WHERE View_a.spros = (SELECT MAX(View_a.spros);
FROM pressa!view View_a;
WHERE View_a.izdat = thisform.Combo1.value)
В ходе выполнения расчетно-графической работы были закреплены (и приобретены новые) навыки работы в среде Visual FoxPro 6.0. Получен опыт проектирования баз данных, работы с ними посредством запросов на языке SQL, а также приобретен опыт в управлении базами данных. Также были закреплены навыки работы с меню (Command, Submenu, Procedure), с формами (CommandButton, Combo Box, Text Box, Edit Box, Container и др.), с массивами данных.
Для работы с данными создана единая форма, в которой имеются средства для редактирования базы и формирования различных запросов к ней.
Использование SQL – процедур позволяет создавать сложные многоуровневые запросы к базе данных, и организовывать вывод найденных записей в форме, удобной для пользователя.
1. Омельченко Л.Н. Самоучитель Visual Foxpro 8. – СПб.: БХВ – Петербург, 2005.
2. Трошина Г.В. Методические указания к лабораторному практикуму. – НГТУ 2004.
3. Электронный учебник по Visual FoxPro.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.