Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Запити.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
122.88 Кб
Скачать

Інструктивно-методична карта лабораторного заняття № 4

З дисципліни: Системи керування базами даних

За спеціальністю: 5.080405

ТЕМА Запити-Дії. Перехресні запити

МЕТА: набути навички створення запитів до бази даних.

І. ПРОВЕДЕННЯ КОНТРОЛЮ ЗНАНЬ, ВМІНЬ І НАВИЧОК.

  1. Чи можна запити дії створити за допомогою майстра?

  2. Із створення якого типу запиту починається конструювання запиту дії?

  3. Як проглянути записи, які складуть нову таблицю, створювану запитом?

  4. Чи визначений ключ в структурі таблиці, створеної запитом?

  5. Якою командою здійснюється перетворення запиту на вибірку в запит на оновлення?

  6. В якому рядку запиту на оновлення указується нове значення поля, що обновляється?

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

  8. Яка інструкція мови SQL відповідає запиту на створення таблиці?

  9. Чи можна в нову таблицю, створювану запитом, включати поля декількох таблиць?

  10. Яка інструкція мови SQL відповідає запиту на оновлення?

  11. Чи можна проглянути вміст полів, що обновляються, до і після оновлення, не виходячи з режиму конструктора запитів?

  12. В якому рядку запиту на додавання указується, звідки повинні вибиратися значення полів записів, що додаються?

  13. Де указується ім'я таблиці, в яку додаються записи?

  14. В якому рядку запиту на додавання указується, в які поля повинні потрапляти записи, що додаються?

  15. Яка інструкція мови SQL відповідає запиту на додавання?

  16. Вслід за яким словом в інструкції insert записується ім'я таблиці, в яку додаються записи?

  17. За допомогою чого формуються записи в інструкції INSERT, що додаються ?

  18. Чи можуть записи, що додаються, формуватися на основі декількох таблиць?

  19. Чи можна одним запитом видалити записи з декількох таблиць?

  20. Якщо в запиті на видалення використані головна таблиця і дві підлеглих, знаходяться з головною відносно 1:М, з якої таблиці можуть віддалятися записи?

  21. Яким чином в запиті на видалення указується таблиця, з якої віддаляються записи?

  22. Яка інструкція мови SQL відповідає запиту на видалення?

  23. Якщо в пропозиції from інструкції delete вказана одна таблиця, чи потрібно використовувати в списку полів конструкцію ім’я_таблиці.* ?

  24. Які поля включаються в список полів запиту на видалення?

  25. Скільки таблиць використовує майстер при побудові перехресного запиту

  26. Як за допомогою майстра побудувати багатотабличний перехресний запит?

  27. Чи можна для заголовків рядків використовувати декілька полів?

  28. Чи можна в режимі конструктора побудувати перехресний запит?

  29. По яких полях задається угрупування в бланку запиту при конструюванні перехресного запиту?

  30. Яке слово потрібне вибрати в рядку Перехресна таблиця для поля, що використовується для обчислення підсумкових значень?

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

  32. Де записується вираз для розрахунку підсумкових значень?

  33. Де можна задати підпис поля?

  34. Яка інструкція мови SQL відповідає перехресному запиту?

  35. Якою пропозицією інструкції transform указується поле, значення якого використовуватимуться як заголовки стовпців перехресної таблиці?

  36. Якою пропозицією інструкції transform задається угрупування по значеннях заголовків рядків?

II. РОЗВ’ЯЗУВАННЯ ЗАВДАНЬ.

Створення нової таблиці за допомогою запиту

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

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

Вправа 9.1. Конструювання запиту на створення таблиці

Сконструюємо запит на створення таблиці на прикладі раніше одержаного запиту на вибірку з груповими обчисленнями Число студентів в групах (див. вправу 7.4).

  1. У вікні бази даних виділіть названий запит і натисніть кнопку Конструктор.

  2. Перетворіть цей запит на вибірку в запит на створення таблиці, вибравши на панелі конструктора тип запиту Створення таблиці (Маке-Таble Query).

  3. У вікні Створення таблиці (Маку Table) введіть ім'я створюваної таблиці Число студентів.

  1. Щоб переглянути, які записи будуть поміщені в нову таблицю, клацніть на кнопці панелі інструментів Вид (View).

  2. Виконайте запит, щоб таблиця Число студентів була збережена в базі даних. Тепер цю таблицю можна побачити в списку таблиць вікна бази даних.

  3. Перейдіть в режим SQL. Еквівалентна запиту на створення таблиці інструкція SELECT ... INTO буде записана таким чином:

SELECT DISTINCTROW СТУДЕНТ. НГ, Count (СТУДЕНТ . НГ) AS Count_HГ

INTO [Число студентів]

FROM СТУДЕНТ

GROUP СТУДЕНТ.НГ;

Інструкція SELECT ... INTO, як і інструкція SELECT, виконує вибірку даних, але на відміну від неї для збереження вибраних даних створює нову таблицю, ім'я якої указується в пропозиції into, нова таблиця включає перераховані в select поля з таблиць, вказаних в пропозиції FROM. Допустиме використовування пропозиції group, що визначає поле угрупування. При цьому список полів нової таблиці повинен включати поле, обчислюване за допомогою однієї із статистичних функцій (в прикладі - Count). Якщо перед group помістити пропозицію where, тоді групи формуватимуться із записів, відібраних після вживання

Оновлення групи записів

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

Вправа 9.2. Конструювання запиту на оновлення

Розглянемо технологію створення запиту на оновлення на прикладі оновлення поля КІЛ (кількість студентів групи в таблиці ГРУПА). Кількість студентів в групах раніше була підрахована за допомогою статистичної функції Count в запиті на вибірку Число студентів в групах. Запит на оновлення безпосередньо на такому запиті побудувати не можна. Тому використовуйте для оновлення не сам запит, а таблицю Число студентів, одержану за запитом на створення таблиці в попередній вправі.

1. Для формування запиту на оновлення спочатку створіть Запит на вибірку (Select Query) на основі двох таблиць: таблиці, що обновляється, ГРУПА і таблиці Число студентів, що містить дані для оновлення.

3ауваження

В підсхемі даних запиту автоматично встановиться зв'язок цих таблиць по полю з однаковим ім'ям (НГ).

2. Перетворіть запит на вибірку в Запит на оновлення (Update Query), вибравши Оновлення (Update Query) із списку Тип запиту (Query Туре) на панелі конструктора або команду меню Запит | Оновлення (Query | Update). Після виконання цієї команди в бланку запиту з'являється рядок Оновлення (Update То).

3. Заповніть бланк запиту. Перетягніть поле КІЛ, що обновляється, із списку Таблиці ГРУПА в рядок Поле. В рядок Оновлення (Update То) введіть ім'я поля Count_HC (таблиці Число студентів), з якого вибираються значення для оновлення. Ім'я поля укладете в квадратні дужки.

  1. Прогляньте вміст поля КІЛ, що обновляється, перед виконанням запиту, натискуючи кнопку на панелі конструктора запитів Вид (View).

  1. Виконайте запит.

  1. Прогляньте вміст поля КІЛ, що обновляється, в таблиці після виконання запиту.

  2. Для подальшого використовування підготовленого запиту збережете його під ім'ям Оновлення ГРУППА_КОЛ.