Лабораторна робота №4 на тему Запити на змінення, Бази даних та інформаційні системи, ЗНТУ
« НазадЛабораторна робота №4 на тему Запити на зміненняМета роботи: навчитися створювати запити, що змінюють дані таблиць в СУБД Access. 4.1 Запити на оновленняПерш, ніж запускати на виконання запит на оновлення, треба: 1) зберегти резервну копію таблиці; 2) створити запит на вибірку та перевірити за його допомогою, що до запиту увійшли усі потрібні записи і лише вони. Задача 4.1. Змінитизаробітки робітників таким чином: тим робітникам, яким нарахована сума менше 40 грн., збільшити її до 40 грн. З таблиці tzarobitok виберемо поле zar і створимо запит на вибірку. Потім в режимі конструктора запиту в меню Запрос виберемо пункт Обновление. У вікні конструктора з’являється новий рядок Обновление. Запишемо в цьому рядку правило оновлення поля zar: IIf ( [tzarobitok] ! [zar] > 40 ; [tzarobitok] ! [zar] ; 40) Після запуску запиту на виконання з’явиться вікно повідомлення (див. рис. 4.1). Якщо натиснути кнопку Да, то вміст таблиці буде змінено. Потім цю дію відмінити не можна. Рисунок 4.1 – Вікно повідомлення 4.2 Створення нової таблиціЗапити на створення нової таблиці зручно використовувати для зберігання якихось підсумків або архівних даних. Задача 4.2. Записати до нової таблиці відомості про загальні заробітки всіх робітників. Використаємо існуючий запит pidsumki (див. задачу 3.1). Щоб записати підсумки до нової таблиці, в режимі конструктора запиту pidsumki в меню Запрос виберемо пункт Создание таблицы. Відкриється вікно (див. рис. 4.2), в якому треба ввести ім’я нової таблиці. Рисунок 4.2 – Фрагмент вікна Создание таблицы Після запуску запиту буде створена нова таблиця з ім’ям itogo. Її вміст співпадатиме з вмістом запиту. Якщо запустити запит вдруге, то виведеться вікно повідомлення: Существующая таблица ‘itogo‘ будет удалена перед выполнением запроса. Продолжить выполнение? Якщо відповісти „Да”, буде вилучений попередній варіант таблиці itogo і створений новий. 4.3 Вставка даних з іншої таблиціЦей вид запитів дозволяє, наприклад, додавати дані до інших таблиць, зокрема до архівних. Задача 4.3. Створити архівну таблицю про заробітки робітників за попередні роки. Забезпечити можливість її доповнення. Створимо спочатку запит на вибірку з полями таблиці tvidom: fio, pidrozdil, tn та полями таблиці tzarobitok: dat і zar. Відкриємо його в режимі конструктора та добавимо Условие отбора для поля dat: Year ( [tzarobitok] ! [dat] ) < 2005 В меню Запрос виберемо пункт Создание таблицы. Створимо нову таблицю arhiv, куди запишемо застарілі відомості про заробітки. В конструкторі таблиць встановимо підписи полів та інші властивості у разі потреби. Тепер змінимо тип запиту. В меню Запрос виберемо пункт Добавление. Відкриється вікно, в якому треба буде вибрати зі списку одну з існуючих таблиць. Вкажемо таблицю arhiv. Для того, щоб цей запит доповнював таблицю arhiv, не повторюючи дані, треба змінити Условие отбора для поля dat. Наприклад, можна створити обчислювальне поле Year ( [tzarobitok] ! [dat] ) і вибирати дані за допомогою параметру [Введіть рік] (див. рис. 4.3). Щоб вилучити дані за минулий рік, можна використати умову: Year ( [tzarobitok] ! [dat] ) = Year (Date( ) ) – 1 Рисунок 4.3 – Фрагмент вікна конструктора задачі 4.3 4.4 Вилучення даних з таблиціЗадача 4.4. Вилучити з таблиці tzarobitok відомості про заробітки робітників за попередні роки, відібрані до архіву. Створимо спочатку запит на вибірку з усіма полями таблиці tzarobitok. Для запису Условия отборакраще використати параметр та переконатися, що відбираються тільки потрібні записи. Потім в меню Запрос виберемо пункт Удаление. Цей тип запитів дозволяє вилучати тільки весь запис повністю, а не окремі поля. Перед виконанням запиту рекомендується зробити резервну копію таблиці. Відновити вилучені записи неможливо. 4.5 Контрольні питання1. Як створюється запит на оновлення даних в таблиці? Яким чином змінюються дані? 2. Як створити нову таблицю для запису отриманої вибірки даних? 3. Як доповнити існуючу таблицю даними з інших таблиць? 4. Як виконується вилучення даних з таблиці? 4.6 Індивідуальні завданняСтворити для свого варіанту:
Варіант 11. Заповнити поле категорія пільг в таблиці Замовлення відсотками сплати згідно умові. 2. Створити архівну таблицю підсумків продажу за кожен місяць. 3. Передбачити можливість поповнення архівної таблиці. Для вибору місяця та року використовувати параметри. 4. Вилучити з таблиці добрива, які не користуються попитом. Варіант 21. Для всіх транспортних засобів збільшити вартість т/км на 5%. 2. Створити архівну таблицю загальної вартості перевезень за кожен місяць. 3. Передбачити можливість поповнення архівної таблиці. Для вибору місяця та року використовувати параметри. 4. Вилучити дані про замовлення, що вже виконані. Варіант 31. Для одного з готелів збільшити вартість проживання на 15%. 2. Створити таблицю сум, сплачених гостями певного готелю. 3. Створити архівну таблицю на основі запиту, який підраховує вартість проживання, та передбачити можливість її поповнення даними за сплати у вказаному місяці. 4. Вилучити дані про гостей, які проживають не в Україні. Варіант 41. Для одного з виробників збільшити вартість продукції на 10%. 2. Створити таблицю матеріалів для певного постачальника. 3. Створити архівну таблицю та передбачити можливість її поповнення відомостями про замовлення минулого року. 4. Вилучити дані про замовлення минулого року. Варіант 51. Заповнити поле внесена сума в таблиці Платежі сумами до сплати з урахуванням пільг згідно умові. 2. Створити таблицю споживачів для певної пільгової категорії. 3. Створити архівну таблицю та передбачити можливість її поповнення підсумковими відомостями про сплачені споживачами суми за вказаний період. Вказувати прізвище споживача. 4. Вилучити з таблиці дані про сплати споживачів однієї з пільгових категорій. Варіант 61. Для одного з видів продукції збільшити обсяг мінімальної замовленої партії на 10 одиниць. 2. Створити таблицю продукції, що не користується попитом, тобто замовлення на неї відсутні протягом останнього місяця. 3. Створити архівну таблицю та передбачити можливість її поповнення відомостями про загальну вартість замовлень для кожного з магазинів за вказаний рік. 4. Вилучити дані про замовлену продукцію для одного з магазинів – замовників. Варіант 71. Для одного з постачальників збільшити вартість одиниці продукції на 5%. 2. Створити таблицю найменувань вузлів для певного виробника. 3. Створити архівну таблицю та передбачити можливість її поповнення відомостями про загальну вартість замовлення для кожного з вузлів за кожен квартал минулого року. 4. Вилучити з таблиці Вузли інформацію про продукцію одного з виробників. Варіант 81. Для певного типу літака збільшити тариф на 10%. 2. Створити архівну таблицю підсумків продажу за місяць. 3. Передбачити можливість поповнення архівної таблиці. Для визначення інтервалу часу використовувати параметри. 4. Вилучити дані про продаж квитків на ті дати, що вже минули. Варіант 91. Для всіх операцій збільшити на 5% вартість однієї доби післяопераційної реабілітації. 2. Створити таблицю пацієнтів першої категорії, що знаходилися на лікуванні. 3. Створити архівну таблицю та передбачити можливість її щомісячного поповнення відомостями про вартість лікування тих пацієнтів, що обслуговуються безкоштовно. Для вибору місяця та року використовувати параметри. 4. Вилучити дані про виписаних пацієнтів. Варіант 101. Зменшити опускну ціну книг минулого року видання на 10%. 2. Створити таблицю замовлень, що вимагають допоставки. Вказати автора, назву книги, замовника та обсяг до поставки. 3. Створити архівну таблицю та передбачити можливість її поповнення відомостями про загальну вартість замовлень для кожного магазину за вказаний рік. 4. Вилучити дані про замовлення, що виконані повністю. Варіант 111. Для всієї продукції вищого ґатунку збільшити вартість одиниці продукції на 5%. 2. Створити таблицю продукції, що зберігається на складі, для одного з цехів. 3. Створити архівну таблицю та передбачити можливість її поповнення відомостями про загальну вартість поставленої на склад продукції у вказаному місяці та році. 4. Вилучити дані про партії продукції, що були зареєстровані на складі у минулому році. Варіант 121. Заповнити поле нарахована сума в таблиці Платежі сумами до сплати з урахуванням пільг згідно умові. 2. Створити таблицю абонентів для певної пільгової категорії. 3. Створити архівну таблицю та передбачити можливість її поповнення підсумковими відомостями про сплачені абонентами суми за вказаний період. 4. Вилучити з таблиці дані про сплати абонентів, що були здійснені до 15 числа поточного місяця. З повагою ІЦ "KURSOVIKS"!
|