Добавил:
інстаграм _roman.kob, курсові роботи з тєрєхова в.в. для КІ Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab3_18.doc
Скачиваний:
10
Добавлен:
31.05.2020
Размер:
988.16 Кб
Скачать

Міністерство освіти і науки України

ВСП - Технічний коледж

Національного університету “Львівська політехніка”

Циклова комісія

інформаційних технологій

Проектування

запитів до бази даних

Методичні вказівки

до лабораторної роботи №3

з дисципліни "БАЗИ ДАНИХ "

для студентів спеціальності "Розробка програмного забезпечення"

Львів – 2016

Мета роботи: Вивчення засобів розробки запитів RQBE, видів запитів, їх виконання та застосування для роботи з реляційними базами даних.

Теоретична частина

Що таке запит

Запити застосовуються користувачем для вибірки з бази даних інформації, яка його цікавить, тобто відповідає певним критеріям. Наприклад, мова може йти про пошук всіх клієнтів, що живуть в Україні, або про вибір відомостей про торгові операції здійснені за останній квартал.

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

Результат роботи запиту Access являє собою таблицю яка називається Dynaset (динамічний, тимчасовий набір даних). При кожному виконанні запиту заново здійснюється вибірка даних.

Типи запитів

За способом побудови запити діляться на: QBE-запити (Query By Example – запит за зразком), користувач дає їм визначення, специфікуючи окремі параметри у вікні проектування з використанням підказок (зразків), та SQL-запити (Structured Query Language – структурована мова запитів), формулюючи їх, користувач застосовує інструкції і функції, створюючи деякий опис. QBE-запит Access легко транслює у відповідний SQL-запит. При зворотній операції можливі деякі нюанси та неточності.

Створення запиту на вибірку даних за допомогою Майстра запитів

Найпоширенішим є запит на вибірку. Він містить умови відбору даних і повертає вибірку, відповідну до зазначених умов, без зміни даних. Найпростіше можна створити запит за допомогою Майстра запитів. Майстер працює з користувачем в такий спосіб: користувачу задається ряд запитань; ґрунтуючись на поданих користувачем відповідях, Майстер самостійно створює відповідний об’єкт бази даних. Для створення запиту за допомогою Майстра запитів потрібно виконати такі дії:  в головному меню Microsoft Access 2010 у вкладці Создание виберіть розділ Запросы і натисніть кнопку Мастер запросов (рис.4);

Рис. 4. Виклик Майстра запитів

  • у вікні Новый запрос, яке відкриється виберіть Простой запрос і натисніть ОК (рис.5);

Рис. 5

у вікні Создание простых запросов (рис.6), яке з’явиться, в полі зі списком Таблицы и запросы виберіть потрібну таблицю або запит, що слугуватимуть джерелом даних для запиту;

Рис. 6.

за допомогою кнопок зі стрілками перемістіть із списку Доступные поля у список Выбранные поля тільки ті поля, які необхідні у запиті, що створюється; порядок полів у запиті відповідатиме порядку полів у списку Выбранные поля; натисніть Далее;

в наступному вікні (рис.7) вкажіть ім’я запиту і виберіть подальші дії з ним: змінити макет запиту чи відкрити запит для перегляду; натисніть Готово;

Рис 7.

Після завершення роботи майстра простих запитів, залежно від вибору подальших дій із запитом, відкриється або вікно запиту в режимі перегляду або вікно конструктора запитів, в якому можна модифікувати запит.

Створення запиту на вибірку даних за допомогою Конструктора запитів

На відміну від Майстра, Конструктор не створює самостійно об’єкт база даних, Однак він надає в розпорядження користувача ряд інструментальних засобів, за допомогою яких користувач може створити об’єкт на свій розсуд. Окрім цього, за допомогою Конструктора можна редагувати вже створені об’єкти бази даних. Для створення запиту за допомогою Конструктора запитів потрібно виконати такі дії:  в головному меню Microsoft Access 2010 у вкладці Создание виберіть розділ Запросы і натисніть кнопку Конструктор запросов (рис.8);

Рис. 8

з’явиться вікно Конструктора запитів, а в ньому вікно Добавление таблицы (рис.9); в цьому вікні виберіть таблиці чи запити, інформація з яких потрібна для створення нового запиту, і натисніть Добавить; після вибору всіх таблиць натисніть Закрыть

Рис. 9

всі вибрані таблиці відобразяться у вікні Конструктора запитів (рис.10); якщо таблиці пов'язані між собою, тобто зв'язки присутні на схемі даних, то ці зв'язки також відображаються; якщо зв'язки на схемі даних не встановлені, то Конструктор запитів автоматично встановлює зв'язки між таблицями, якщо вони містять поля, які мають однакові імена і узгоджені типи;

Рис. 10

для видалення таблиці із запиту натисніть правою клавішею мишки на вибраній таблиці і в контекстному меню виберіть Удалить таблицу або натисніть клавішу <Delete>; для добавлення таблиці натисніть Отобразить таблицу в розділі Настройка запроса меню Работа с запросами (рис.11), або натисніть правою клавішею мишки в полі конструктора запитів і в контекстному меню виберіть Добавить таблицу;

Рис. 11

далі вкажіть, які поля з базових таблиць будуть відображатись у запиті; для цього виконайте одну з послідовностей дій: 1. виділіть потрібне поле в таблиці; двічі клацніть лівою клавішою мишки на виділеному полі; у бланку запиту з’явиться стовпчик, що відповідає вибраному полю; аналогічно додайте інші поля; стовпчики заповнюються зліва праворуч; якщо потрібно включити в запит всі поля таблиці, виділіть поле позначене зірочкою (*); 2. підведіть курсор мишки до виділеного поля таблиці і утримуючи ліву клавішу мишки, перетягніть поле в потрібне місце бланку запиту; цей спосіб дозволяє поміщати поля у будь-яке місце бланку запиту; 3. використайте список полів, що розкривається, у рядку Поле бланка запиту (рис.12);

Рис. 12

Поля конструктора такого запиту наведено в таблиці 1.

Таблиця 1. Зміст полів конструктора запитів RQBE

Поле

Опис

Field

Поле таблиці, дозволяється вказати й таке, якого ще не існує

Table

Назва таблиці, в якій розміщене дане поле

Sort

Порядок сортування (в порядку зростання/спадання/не сортувати)

Show

Показувати/не показувати

Criteria

Критерії відбору (умови, за якими буде проведено вибірку даних при виконанні запиту; при відсутності умови вибираються всі значення поля)

Щоб видалити поле із запиту виділіть відповідний стовпчик у бланку запиту і натисніть клавішу <Delete>, або натисніть Удалить столбцы в розділі Настройка запроса меню Работа с запросами (рис.13)

Рис. 13

Для встановлення порядку сортування записів у запиті використайте стрічку Сортировка. Для кожного поля можна вибрати із списку відповідний порядок сортування. За замовчування встановлено значення (отсутствует). Якщо потрібно відсортувати записи у запиті за декількома полями, впорядкуйте їх у бланку запиту зліва праворуч (саме у такому порядку буде виконуватись сортування).

Поля, які є у бланку запиту, можна не показувати у результуючій таблиці виконання запиту. Для цього зніміть прапорець у стрічці Вывод на экран відповідного поля. Це може бути корисним, коли поле включають у бланк запиту тільки щоб задати умови відбору чи сортування записів.

У стрічці Условие отбора і в стрічці или можна вказати умови відбору записів. Якщо умови знаходяться в одній стрічці, але у різних стовпчиках, то вони об’єднуються логічним оператором And (І). Якщо умови потрібно об’єднати логічним оператором Or (АБО), то їх розміщають в різних стрічках бланка запиту. Якщо критерій відбору дуже складний, то можна вставити додаткові стрічки умов. Для цього: виділіть стрічку, над якою будете вставляти нову, і натисніть Вставить строки в розділі Настройка запроса меню Работа с запросами (рис.15). Для видалення стрічки умов виділіть її і натисніть Удалить строки в розділі Настройка запроса меню Работа с запросами

Після формування бланку запиту збережіть його: натисніть кнопку збереження на панелі інструментів, або виконайте команду Сохранить в меню Файл. При цьому з’явиться діалогове вікно (рис 14), в якому введіть ім’я запиту.

Рис. 14

Щоб побачити результат виконання запиту, переключіться в режим таблиці, або натисніть кнопку Выполнить.

В запитах можна створювати стовпчики, які будуть містити результат обчислень над значеннями інших стовпчиків. Такі стовпчики називають обчислювальні. Для їх створення введіть в стрічці Поле вільного стовпчика ім’я поля, знак двокрапки (:) і далі вираз, що обчислює чи визначає потрібне значення. Отримаємо поле з результуючими значеннями. Для створення виразів можна скористатись побудовником виразів, який викликається натисканням кнопки Построитель в розділі Настройка запроса меню Работа с запросами (рис.16).

Рис. 16

Часто необхідно знайти інформацію, яка базується на узагальнених даних. Наприклад, потрібно взнати загальне число замовлень або загальну кількість вантажу, відправленого за замовленнями минулого року. Такі підсумовуючі запити здійснюються завдяки використанню сумуючих функцій, які визначають потрібні величини по значенню поля. Можна здійснювати статистичні розрахунки як над всіма записами, так і над групами записів з однієї або декількох таблиць.

Якщо у вікні конструктора запитів натиснути кнопку меню з літерою , то з’явиться ще одне поле – Групова операція. Це поле призначене для проведення групових обчислень.

Рис. 17.

Дванадцять опцій цього списку можна поділити на чотири категорії (див.табл.2).

Наприклад, необхідно підрахувати загальну суму всіх замовлень кожного з клієнтів. Для того, щоб здійснити обчислення необхідно вибрати одну з опцій у списку.

Таблиця 2. Типи операцій в запитах

Категорія

Призначення

Group By (Групування)

Збирає записи, що мають спільні ознаки , в групи, над якими потім виконуються операції

Набір операцій

Визначає математичну операцію, яка буде виконана над полем

Expression (Вираз)

Об’єднує декілька операцій у вираз

Where (Умова)

Накладає деяке обмеження

Категорія групування дозволяє вибрати певні поля, які пізніше будуть опрацьовуватись як група. Вибір категорії виразу вказує на те, що поле буде опрацьовано в декілька етапів. При виборі категорії умови встановлюються обмежуючі критерії, для полів, над якими буде проведено статистичні розрахунки.

Таблиця 3. Узагальнюючі опції рядка групових операцій

Sum

Сума всіх значень поля

Лічильник, числовий, грошовий, дата/час, логічний

Avg

Середнє значення всіх значень поля

Лічильник, числовий, грошовий, дата/час, логічний

Min

Найменше значення поля

Лічильник, числовий, грошовий, дата/час, логічний, текстовий

Max

Найбільше значення поля

Лічильник, числовий, грошовий, дата/час, логічний, текстовий

Count

Кількість ненульових (непорожніх) елементів

Лічильник, числовий, грошовий, дата/час, логічний, текстовий, МЕМО, об’єкт OLE

First

Значення з першого запису в таблиці чи запиті

Лічильник, числовий, грошовий, дата/час, логічний, текстовий, МЕМО, об’єкт OLE

Last

Значення з останнього запису в таблиці чи запиті

Лічильник, числовий, грошовий, дата/час, логічний, текстовий, МЕМО, об’єкт OLE

Отже, групування - це процедура підсумовування стовпчиків з однаковими значеннями. Із випадного списку Групповая операция в полі (рис.18) виберіть необхідну опцію чи статистичну функцію

Рис. 18

Зауваження. Враховуючи те, що Count пропустить всі порожні значення, при необхідності підрахувати всі поля (в тому числі й ті, що містять порожні значення) слід вибирати поле первинного ключа для застосування цієї операції.

Соседние файлы в предмете Организация баз данных