МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ „ЛЬВІВСЬКА ПОЛІТЕХНІКА”
Кафедра ІСМ
Звіт
до лабораторної роботи №3
Розроблення форм вихідних документів
Львів 2013
Мета роботи: Вивчення засобів розробки запитів RQBE, видів запитів, їх виконання та застосування для роботи з реляційними базами даних. Побудова форм відповідно до бази даних побудованої на лабораторній роботі №2, по темі - каталог товарів одягу.
Теоретичні відомості
Запити застосовуються користувачем для вибірки з бази даних інформації, яка його цікавить, тобто відповідає певним критеріям. Наприклад, мова може йти про пошук всіх клієнтів, що живуть в Україні, або про вибір відомостей про торгові операції, здійснені за останній квартал.
Якщо необхідно скласти запит на основі декількох таблиць, то між цими таблицями попередньо необхідно встановити відношення, зв'язуючи поля одне з одним.
Результат роботи запиту Access являє собою таблицю, яка називається Dynaset (динамічний, тимчасовий набір даних). При кожному виконанні запиту заново здійснюється вибірка даних.
Для формування запитів користувачами та спрощення процесу створення запитів сучасні СУБД використовують додаткові інтерфейси та середовища. Одним з них є релізований у MS Access інтерфейс RQBE (Relational Query By Example).
За способом побудови запити у СУБД MS Access діляться на: QBE-запити (Query By Example - запит за зразком), користувач дає їм визначення, специфікуючи окремі параметри у вікні проектування з використанням підказок (зразків), та SQL-запити (Structured Query Language - структурована мова запитів), формулюючи їх, користувач застосовує інструкції і функції, створюючи деякий опис. QBE-запит Access легко транслює у відповідний SQL- запит. При зворотній операції можливі деякі нюанси та неточності.
Перехресний запит (CrosstabQuery)
У Access можна створювати особливі типи запитів – перехресні. Вони відрізняються тим, що відображають сумарну інформацію у компактному та у зручному для читання вигляді. Перехресний запит створює з таблиці звичайну матрицю, яка описує відповідність значень одного поля значенням іншого поля у таблиці. Він надає кінцеву інформацію для вказаних полів у формі розрідженого масиву. По вертикалі такого масиву відображаються значення
першого поля, по горизонталі – другого. На перетині відповідних рядка та стовпчика розміщується підсумкове значення, яке вираховується для поєднання їх у таблиці. Підсумкове значення може бути вибране у якості агрегатної функції типу сума, кількість, тощо. Для наочності нижче подано приклади перехресних запитів.
Запит на видалення записів (Delete Query)
З усіх запитів, що вносять зміни, запит на видалення найбільш небезпечний. На відміну від інших типів запитів він видаляє записи з таблиці назавжди і без можливості відмінити зміни. Як і інші запити, що вносять зміни, запит на видалення обробляє групу записів, спираючись на критерії вибору. Такий запит може видаляти записи з декількох таблиць одночасно.
У випадку відношення один-до-багатьох з вимкнутою опцією Каскадне видалення записів Access за один раз видаляє записи тільки з однієї таблиці. Точніше, спочатку видаляються записи зі сторони багато. Потім слід видалити з запиту таблицю, що містить частину багато, і видалити записи з таблиці, що містить частину один. Такий спосіб не дуже зручний і забирає багато часу. При видаленні зв'язаних запитів з таблиць, що перебувають у відношенні один-до-багатьох, слід переконатись у тому, що опція каскадне оновлення ввімкнута.
Запис на видалення дозволяє видалити записи повністю, а не очистити вказані поля. Якщо потрібно видалити дані тільки у вказаних полях, то слід скористатись запитом на оновлення.
Опис виконаної роботи
В даній лабораторній роботі засобами RQBE було створено запити у відповідності до вимог завдання. Всі запити будувались на основі таблиць бази даних, яка була створена у лабораторній роботі №2.
А) Опис запитів:
Запит на вибір даних без критеріїв пошуку. Отримаємо інформацію про всі товари. Для цього ми створили простий запит на вибір даних з таблиці ВСІ ТОВАРИ(Найменування товару, Бренд товару, Матеріал, Стать, Ціна).
Запит на вибір даних за критерієм. Отримуємо інформацію про товари, у нашому випадку за статтю, з таблиці ВСІ ТОВАРИ(Найменування товару, Бренд товару, Матеріал, Стать, Ціна).
Параметричний запит на вибір даних за заданим критерієм із значенням заданим у вигляді параметра. Отримуємо інформацію про товари по ціні. Потрібно ввести межі ціни, щоб отримати усі товари, які присутні у межах цих цін, з таблиці ВСІ ТОВАРИ (Артикль, Найменування товару, Бренд товару, Матеріал, Стать, Ціна).
Запит на модифікацію значень полів записів за заданим критерієм. Дозволяє змінити ціну, потрібним товарам. Для цього потрібно ввести Назву товару і Ціну, на яку змінити. З таблиці ВСІ ТОВАРИ (Ціна товару, Найменування товару).
Запит на додавання. Дозволяє додати потрібні нам записи до таблиці Всі товари. Для цього потрібно в таблиці ДОДАВАННЯ ДО ВСІ ТОВАРИ(Артикль, Найменування товару, Бренд товару, Матеріал, Стать, ціна), створити записи і тоді використати запит Додавання, після чого до таблиці ВСІ ТОВАРИ додадуться ці записи.
Запит на видалення. Дозволяє видалити потрібний товар з таблиці ВСІ ТОВАРИ, по Артиклю.
Запит з групуванням та обчисленням. Дозволяє згрупувати і підрахувати товар по Порах року, і дізнатися загальну суму товарів середню ціну на одиницю товару кожного з сезонів(Пора року, Середня ціна на товар, Сума товару).
Перехресний запит для відображення залежності значень одного поля таблиці від іншого. Дозволяє побачити зручніше переглядати інформацію про Ціни на товари по Порах року(Артикль, Найменування товару, Бренд товару, Пора року, Стать, Ціна)..
Б) Результати роботи запитів:
/
рис.1. Запит на вибір даних без критеріїв пошуку
/
рис.2. Запит на вибір даних за критерієм
//
/
рис.3. Параметричний запит на вибір даних за заданим критерієм із значенням заданим у вигляді параметра
//
/
рис.4. Запит на модифікацію значень полів записів за заданим критерієм
/
/
/
рис.5. Запит на додавання
//
/
рис.6. Запит на видалення
/
рис.7. Запит з групуванням та обчисленням
/
рис.8. Перехресний запит для відображення залежності значень одного поля таблиці від іншого
Висновок: в даній лабораторній роботі ознайомився з засобами розробки запитів RQBE, видами запитів, способами їх виконання та застосування для роботи з реляційними базами даних. Практично використав навики, по створенню запитів, і виконав дану лабораторну.