Тема: «Основні особливості Visual FoxPro. Запуск Visual FoxPro»

Вид материалаПрактикум

Содержание


Завдання 8. Виберіть з бази даних усіх студентів, які здали сесію на "добре" і "відмінно". Для цього виконаєте наступні дії
Filter. У другому рядку умов фільтрації в полі Field Name
SELECT [ALL /DISTINCT] список даних
Into table
Список даних
Умови вибірки
SELECT для цього запиту запишіть у вікні команд таким чином: SELECT nom AS Номер, fio AS Прізвище_І_П, address AS Адреса FROM Ан
Enter. На екрані з'являться результати вибірки. Для таблиці "Анкета"
SELECT запишіть таким чином: SELECT fio AS Прізвище, g_rogd AS Рік_народження FROM Анкета WHERE g_rogd>=1988
Prompt| введіть найменування першого пункту меню – Анкета
Подобный материал:
1   2   3   4   5   6

Завдання 8. Виберіть з бази даних усіх студентів, які здали сесію на "добре" і "відмінно". Для цього виконаєте наступні дії:

  • Збережете усі умови запиту завдання 7.
  • Перейдіть на вкладку Filter.
  • У другому рядку умов фільтрації в полі Field Name виберіть із списку Сесія.eczam1.
  • У полі Criteria виберіть операцію >=.
  • У полі Example вкажіть 4.
  • Аналогічно створіть третій рядок для поля таблиці Сесія.eczam2.
  • Запустите запит на виконання. Проглянете і закрийте запит.
  • Збережете створений запит під ім'ям Хорошисти.
  1. Створення одновимірної перехресної таблиці.

Завдання 9. Підрахуйте кількість "хорошистів|" в кожній групі.

Для цього виконаєте наступні дії:
  • На вкладці Fields з вікна Selected fields видалите усі поля кнопкою Remove All.
  • З поля Available fields виберіть поле Анкета.group і натисніть на кнопку Add.
  • Викличте будівника виразів поряд з вікном Functions and expressions і в його вікні побудуйте вираження COUNT(сесія.eczam1). Дайте обом полям російські найменування, як було описано в пункті 14 ("Группа"," Кількість хорошистів|")
  • Перейдіть на вкладку Join, на якій відображуються зв'язки між таблицями. Виділите зв'язок між таблицями Анкета і Сесія і видалите її кнопкою Remove (це необхідно для коректної роботи функції COUNT).
  • Перейдіть на вкладку Filter. Там мають бути задані наступні умови фільтрації :

Анкета.nom == Сесія.nom AND

Сесія.eczam1 >= 4 AND

Сесія.eczam2 >= 4
  • Перейдіть на вкладку Order By і вкажіть, що дані повинні упорядковуватися за значенням поля Анкета.group.
  • Перейдіть на вкладку Group By і вкажіть, що дані повинні групуватися за значенням поля Анкета.group.
  • Запустите запит на виконання. Проглянете і закрийте запит.
  • Збережете створений запит під ім'ям Хорошисти1.
  1. Створення діаграми по одновимірній перехресній таблиці.
  • У вікні проекту виділите запит Хорошисти1.
  • Натисніть кнопку New, в діалоговому вікні виберіть майстер створення звіту Query Wizard, виберіть GraphWizard і натисніть Ok.
  • На першому кроці роботи майстра виберіть початкову таблицю Хорошисти1 і поля, які будуть використані при створенні діаграми. Їх всього два. Виберіть їх і натисніть кнопку Next.
  • На наступному кроці захопите поле "Група" і перемістите на вікно Axis (вісь), розташоване під зразком діаграми (це поле використовується для підписів даних і легенди). Захопите поле "Кількість хорошистів|" і перемістите у вікно Data Series(значення цього поля використовуються для побудови діаграми). Натисніть кнопку Next.
  • На наступному кроці вкажіть тип діаграми. Виберіть об'ємну гістограму вертикальну або горизонтальну (4-у або 6-у в першому ряду). Натисніть кнопку Next.
  • У останньому діалоговому вікні введіть заголовок діаграми "Кількість хорошистів| по групах", проглянете діаграму кнопкою Preview. З трьох пропонованих варіантів подальшого використання діаграми
  • Зберегти діаграму у формі
  • Зберегти діаграму в таблиці
  • Зберегти і створити для діаграми запит

виберіть перший варіант і натисніть кнопку Finish.
  • Збережете створену діаграму під ім'ям Діаграма1.
  • Створена діаграма відкривається у вікні конструктора форм. Викличте на ній контекстно-залежне меню, виберіть в нім пункт Діаграма Object - Відкрити.
  • Відформатуйте різні області діаграми, аналогічно тому, як Ви робили це в MS Excel.
  • Закрийте вікно Microsoft Graph. Закрийте вікно конструктора форм.
  • У вікні проекту перейдіть на вкладку Documents, виберіть групу Forms і кнопкою Add додайте створену діаграму в проект.
  • Запустите діаграму на виконання. Проглянете і закрийте діаграму.
  • Зміните початкові дані в таблиці "Сесія" (збільште кількість "хорошистів|"). Проглянете, як відбилися Ваші дії на запиті Хорошисти1 і на діаграмі. Зробіть висновок.
  1. Покажіть виконану роботу викладачу.
  2. Закрийте проект.
  3. Закрийте програму.

Контрольні запитання
    1. Що таке запит?
    2. Навести приклади 2–3 простих запитів (логічні вирази).
    3. Навести приклад складного запиту.
    4. Прокоментувати текст на SQL для прикладів, вказаних викладачем.


Лабораторна робота №11


Тема: "Створення запитів за допомогою оператора SELECT|"

Мета роботи:
  • навчитися складати вираз запиту;
  • навчитися генерувати запит в середовищі FoxPro;
  • розробити обробку запиту на різних версіях бази даних.

Теоретичні відомості

Оператор SELECT найбільш важливий з усіх операторів SQL. Він дозволяє робити вибірку і обчислення над даними з однієї або декількох таблиць.

Оператор вибірки записів має формат:

SELECT [ALL /DISTINCT] список даних


FROM список таблиць

[WHERE умова вибірки]

[GROUP BY ім'я стовпця [, ім'я стовпця]…]

[ORDER BY специфікація [, специфікація]…]

[ INTO TABLE ім'я таблиці]

Результатом виконання оператора є таблиця у відповідь, яка може мати (ALL), або не мати (DISTINCT) рядків, що повторюються. За умовчанням в таблицю у відповідь включаються усі рядки, у тому числі і що повторюються.

Список даних може містити імена стовпців, що беруть участь в запиті, а також вираження над стовпцями. Якщо стовпці вибираються з декількох таблиць, то вказується складене ім'я стовпця : ім'я таблиці . ім'я стовпця

Список таблиць задає таблиці, з яких робиться вибір записів.

Умови вибірки - це логічні вирази, які дозволяють вибирати записи, що задовольняють заданим умовам.

Ім'я стовпця показує, по якому стовпцю групуються записи. Групою є записи із співпадаючим значенням вказаного стовпця.

Специфікація - це ім'я поля, по якому упорядковуються записи.

Ім'я таблиці показує, в яку таблицю на диску будуть поміщені результати запиту. Ім'я може бути повним. Якщо отриману таблицю слід додати в проект, то вона додається в групу вільних таблиць (free table) на вкладці Data вікна проекту кнопкою Add.

Хід роботи
  1. Відкрийте раніше створену базу даних "Студент".
  2. Для таблиці "Анкета" вимагається вивести номер, Прізвище. И. О. і адреса студентів. Оператор SELECT для цього запиту запишіть у вікні команд таким чином:

SELECT nom AS Номер, fio AS Прізвище_І_П, address AS Адреса FROM Анкета

Закінчивши введення команди, натисніть клавішу Enter. На екрані з'являться результати вибірки.
  1. Для таблиці "Анкета" вимагається вивести імена студентів, з роком народження 1988 і молодше. Для цього запиту оператор SELECT запишіть таким чином:


SELECT fio AS Прізвище, g_rogd AS Рік_народження FROM Анкета WHERE g_rogd>=1988
  1. Для таблиць "Анкета" і "Сесія" вимагається вивести номер студентів, їх прізвища, адресу, телефон, іспит 1| і іспит 2| (адреса і телефон студента мають бути записані в одному полі). Результуюча таблиця має бути створена з ім'ям "Дані". Оператор SELECT для цього запиту запишіть таким чином:

SELECT анкета.nom AS Номер, анкета.fio AS Прізвище_І_П, ALLTRIM (анкета.address)+" тел. "+ALLTRIM(анкета.telefon) AS Адреса, eczam1 AS іспит 1|, eczam2 AS іспит 2| FROM анкета, сесія WHERE сесія.nom=анкета.nom

INTO TABLE "D:\Program files\Visual FoxPro Projects\Дані"

Відкрийте таблицю "Дані" і проглянете її.
  1. Потрібно збільшити стипендію на 200 грн. усім відмінникам. Результуюча таблиця має бути записана у своїй папці з ім'ям "Стипендія". Оператор SELECT для цього запиту запишіть таким чином:

select анкета.nom as Номер, анкета.fio as Прізвище_І_П, сесія.stipend+200 as Стипендія from анкета, сесія WHERE сесія.nom=анкета.nom AND сесія.eczam1>4 AND сесія.eczam2=5 into table “D:\Program files\Visual FoxPro Projects\Стипендія”
  1. Потрібно вивести прізвища студентів, що читають книгу "Обломов", а також терміни видачі і здачі книги. Результат запиту зберегти з ім'ям "Книжка". Оператор SELECT для цього запиту запишіть таким чином:

select fio as Прізвище_І_П, nazvan AS Назва, data_vud AS Дата_видачі, Srok_sdach AS Термін_здачі from облік WHERE nazvan="Обломов" into table “D:\Program files\Visual FoxPro Projects\Книжка”
  1. Відкрийте таблицю "Книжка" і проглянете її.
  2. Покажіть виконану роботу викладачу.
  3. Закрийте базу даних "Студент".
  4. Закрийте програму.


Контрольні запитання
    1. Що таке запит?
    2. Навести приклади 2–3 простих запитів (логічні вирази).
    3. Навести приклад складного запиту.

Прокоментувати текст на SQL для прикладів, вказаних викладачем.

Лабораторна робота №12


Тема: "Створення меню бази даних"

Мета роботи:
  • навчитися складати меню бази даних;
  • навчитися генерувати меню в середовищі FoxPro;
  • розробити обробку меню на різних версіях бази даних.

Хід роботи
  1. Створення рядка меню (горизонтального меню).
  • Відкрийте раніше створений проект.
  • Перейдіть на вкладку All|, виберіть групу Other|, потім виберіть групу Menus| і натисніть кнопку New| вікна проекту.
  • У діалоговому вікні New| Menu|, що з'явилося, виберіть варіант меню Menu| (горизонтальне меню). В результаті запускається конструктор меню, а в основне меню Visual| FoxPro| додається новий пункт Menu|. У конструкторі меню в полі Prompt| можна ввести найменування пунктів меню. Список Result|, що розкривається, використовується для вказівки типу меню (Command| – Команда, Pad| Name| – Найменування рядка меню, Submenu| – Підменю, Procedure| – Процедура). Кнопка Options| відкриває діалогове вікно Prompt| Options|, в якому можна визначити додаткові параметри даного елементу меню (наприклад, «гарячі клавіші»). У списку Menu| level| указується рівень поточного меню.
  • У полі Prompt| введіть найменування першого пункту меню – Анкета – і натисніть клавішу <Tab|> для переходу на наступне поле.
  • Для визначення типу пункту меню натисніть кнопку розкриття списку і виберіть значення Submenu|.

Перейдіть на наступний рядок і введіть найменування і тип другого пункту меню. Аналогічно введіть найменування інших пунктів меню (рис.1).

Prompt

Result




Анкета

Submenu




Сесія

Submenu




Книги

Submenu

Мал.1

Облік

Submenu




Довідка

Procedure




Вихід

Command