- •Робота в субд Access
- •2.2 Контрольні питання 25
- •1 Лабораторна робота № 1
- •1.1 Теоретичні відомості
- •1.2 Створення таблиць бази даних
- •1.3 Контрольні питання
- •1.4 Індивідуальні завдання
- •2 Лабораторна робота № 2
- •2.1 Створення запитів на вибірку
- •2.1.1 Використання умов у запитах
- •2.1.2 Створення обчислювальних полів
- •2.1.3 Запити з параметром
- •2.1.4 Пошук записів, що не мають зв'язаних в іншій таблиці
- •2.2 Контрольні питання
- •2.3 Індивідуальні завдання
- •3 Лабораторна робота № 3
- •3.1 Використання підсумків у запитах
- •3.2 Перехресні запити
- •Выражение1: "Квартал " & Format( [dat] ;"q")
- •3.3 Контрольні питання
- •3.4 Індивідуальні завдання
- •4 Лабораторна робота № 4
- •4.1 Запити на оновлення
- •4.2 Створення нової таблиці
- •4.3 Вставка даних з іншої таблиці
- •4.4 Вилучення даних з таблиці
- •4.5 Контрольні питання
- •4.6 Індивідуальні завдання
- •5 Лабораторна робота № 5
- •5.1 Створення форм
- •5.2 Контрольні питання
- •5.3 Індивідуальні завдання
- •6 Лабораторна робота № 6
- •6.1 Робота з майстром звітів
- •6.2 Робота з Конструктором звітів
- •Література
2.1.3 Запити з параметром
Задача 2.5. Створити запит про заробітки вказаного робітника. Прізвище робітника вводити як параметр.
Знов використаємо запит vsi roboty. Залишимо потрібні 3 поля (див. рис. 2.9) та в рядку Условие отбора для поля tvidom . fio запишемо в квадратних дужках пояснювальний текст [Введіть прізвище].
Рисунок 2.9 – Фрагмент конструктора запиту 2.5
Після запуску запиту з’явиться вікно з поясненням і текстовим полем, до якого необхідно записати потрібне прізвище (див. рис. 2.10).
Рисунок 2.10 – Вікно для введення параметру
За замовчанням Access встановлює для параметрів запиту текстовий тип даних. Щоб його змінити, треба в режимі конструктора запиту вибрати в меню пункт Запрос, а потім – Параметры.
2.1.4 Пошук записів, що не мають зв'язаних в іншій таблиці
Задача 2.6. Знайти відомості про робітників, які ще не працювали, тобто їхні заробітки відсутні в таблиці tzarobitok.
У вікні конструктора БД натиснемо на кнопку Создать, а потім виберемо пункт Записи без подчиненных. Починає роботу майстер.
На першому етапі необхідно вказати ім’я запиту або таблиці, з якої треба вибрати записи, що не мають зв’язаних записів в іншій таблиці. Виберемо зі списку таблицю tvidom.
Ім’я іншої таблиці, з якою перша має співпадаючі поля, потрібно вказати на другому етапі. Виберемо зі списку таблицю tzarobitok. На третьому етапі вкажемо в таблицях імена полів, що мають співпадаючі значення, тобто tn (табельний номер). Далі вкажемо поля, що увійдуть до запиту, та збережемо запит під іменем Null.
Якщо відкриємо запит в режимі конструктора, то побачимо автоматично створене Условие отбора = Is Null для поля tzarobitok . tn (див. рис. 2.11). Крім того, змінений тип об’єднання таблиць. Щоб перевірити це, виділімо лінію зв’язку між таблицями та в контекстному меню виберемо пункт Параметры объединения. Відкриється вікно з перемикачами (див. рис. 2.12), в якому вибраний другий варіант.
Рисунок 2.11 – Фрагмент конструктора запиту 2.6
Рисунок 2.12 – Настроювання типу об’єднання таблиць
2.2 Контрольні питання
Для чого використовуються запити?
Назвіть елементи вікна конструктора запитів.
Як можна змінити властивості полів, що включені до запиту?
Умови відбору в запитах. Функції Between, In( ), Like( ).
Створення полів, що обчислюються.
“Построитель выражений” і його застосування.
Створення і використання параметричного запиту.
Типи об'єднання таблиць у запиті.
2.3 Індивідуальні завдання
Створити запити для свого варіанту:
настроїти властивості полів;
там, де потрібно, створити обчислювальні поля;
там, де потрібно, створити допоміжні запити;
відкоригувати типи зв’язків між таблицями.
Варіант 1
Для кожного замовника вивести його назву, телефон, дату замовлення, назву добрива та площу для обробки.
На певну дату постачання (яка може бути введена як параметр) вивести інформацію про всі замовлення.
Для кожного замовлення розрахувати необхідну кількість добрива, його вартість, суму до сплати (вартість замовлення – пільги + 20%ПДВ).
Які добрива не користуються попитом (замовлення на них відсутні за останній квартал)?
Варіант 2
Для кожного транспортного засобу вивести його назву та перелік замовлень.
Вивести перелік транспортних засобів, які задовольняють умовам певної ваги чи певного об’єму (вводити, як параметр).
Для кожного замовлення підрахувати вартість перевезення та суми до сплати (відстань * вартість т/км* маса – пільги).
Який вид транспорту зовсім не замовлявся?
Варіант 3
Для кожного готелю вивести його назву, рівень сервісу, прізвище гостя та дату його поселення.
Вивести перелік готелів, які мають певний рівень сервісу, із зазначенням району (рівень сервісу задавати як параметр).
Для кожного гостя обчислити загальну вартість проживання (вартість за одну добу*термін проживання*пільги + 20%ПДВ).
Які готелі не користуються попитом, тобто не мають жодного замовлення за останній місяць?
Варіант 4
Для кожного матеріалу вивести його назву, дату замовлення та замовлену кількість.
На певну дату постачання (яка може бути введена як параметр) вивести перелік усіх замовлень.
Для кожного замовлення розрахувати вартість замовлення та суму до сплати (вартість замовлення +20% ПДВ).
На які будівельні матеріали зовсім відсутні замовлення?
Варіант 5
Для кожного споживача вивести його прізвище, ім’я та по батькові і інформацію про показники лічильника.
Для всіх споживачів та для кожної дати платежу підрахувати суми, необхідні до сплати, з урахуванням пільг та 20% ПДВ.
Вивести перелік усіх сплачених сум на певну дату, яку вводити як параметр.
Які споживачі зовсім не сплачували за електроенергію за два останні місяці?
Варіант 6
Для кожного виду продукції вивести його жирність, дату замовлення та обсяг замовленої партії.
Вивести на певну дату постачання (яка може бути введена як параметр) усі замовлення для магазинів.
Для кожного замовлення вивести вартість замовленої партії продукції, суму до сплати (вартість замовлення +20%ПДВ).
Яка продукція не користуються попитом, тобто замовлення на неї відсутні протягом останнього місяця?
Варіант 7
Для кожного постачальника вивести його назву, назви замовлених вузлів та їх кількість.
Вивести на певну дату постачання (яка може бути введена як параметр) усі замовлення.
Для кожного замовлення підрахувати його вартість та суму до сплати (вартість замовлення +20%ПДВ).
Які вузли зовсім не використовувались за попередній квартал?
Варіант 8
Для кожного аеропорту призначення вивести перелік продаж із зазначенням дати вильоту та кількості проданих квитків.
Вивести перелік рейсів до певного пункту (назву пункту можна вводити, як параметр). Пункти посадок не враховувати.
Для кожного зареєстрованого продажу авіаквитків підрахувати їх вартість та суму до сплати (вартість квитка* кількість квитків * пільги +20%ПДВ).
який рейс не користується попитом (продаж квитків на нього не відбувалась за останні три доби)?
Варіант 9
Вивести список пацієнтів із зазначенням їх категорії, назви та дати операції, вказати прізвище та категорію лікаря.
Вивести на певну дату операції (яка може бути введена як параметр) усі прізвища лікарів та назви операцій.
Для кожного пацієнта підрахувати загальну вартість лікування (вартість операції + вартість післяопераційного лікування) та суму до сплати з урахуванням пільг.
Який хірург не робив операцій протягом останнього місяця?
Варіант 10
Для кожної книги вивести її автора, назву, дату поставки та відправлену кількість.
Вивести на певну дату постачання (яка може бути введена як параметр) усі замовлення для кожного магазину.
Підрахувати для кожного замовлення вартість замовленої партії продукції та суму до сплати (вартість замовлення * пільги + 20% ПДВ).
Яка книга не користуються попитом, тобто замовлення на неї відсутні протягом останніх 6 місяців?
Варіант 11
Для кожного цеху вивести телефон начальника, назву продукції та вартість одиниці продукції кожного ґатунку.
Вивести повну інформацію про наявність на складі певної продукції (назву продукції вводити як параметр).
Для кожної партії продукції, що зберігається на складі, підрахувати її загальну вартість. Вказувати повну назву продукції.
Яка продукція зовсім відсутня на складі?
Варіант 12
Для всіх абонентів вивести прізвище, номер телефону, назву пільгової категорії та відсоток сплати.
Вивести всі дати платежів, нараховані суми та фактичні платежі з урахуванням пені та пільг. Вказати прізвище абонента та номер телефону.
Вивести на певну дату всі суми, внесені абонентами (дату вводити як параметр).
Які абоненти ще не сплачували за телефон цього місяця?