
- •Опорний конспект лекцій Тема: “судб ms Access: основи побудови баз даних та створення запитів”
- •Питання для самоконтролю
- •Л екція 2. Створення таблиць у субд microsoft access
- •Введення даних до таблиці
- •Редагування даних у таблиці
- •Питання для самоконтролю
- •Питання для самоконтролю
- •Л екція 4. Запити ms access: інші різновиди вибіркових запитів
- •Питання для самоконтролю
- •Л екція 5. Запити ms access: модифікуючи запити
- •Питання для самоконтролю
- •Список рекомендованоЇ літератури
Введення даних до таблиці
Після відкриття таблиці вводяться дані послідовно в усі записи. При переході до нового запису інформація автоматично зберігається.
Приклад заповненої таблиці Продаж товару, структуру якої було подано вище (див. рис.2)
Рис. 2. Таблиця Продаж товару
Редагування даних у таблиці
Зберігання всіх змін у таблиці:
Для зберігання змін макета таблиці, вибрати команду Файл/Сохранить або натиснути на кнопку Сохранить в панелі інструментів.
5. Схема даних в Access
|
Схема даних - графічний образ бази даних, який використовується Access у процесі роботи з базою даних. Схема даних задає структуру бази даних. У ній визначаються і запам'ятовуються зв'язки між таблицями. |
Схема даних бази графічно відображається у своєму вікні, де таблиці подані списками полів, а зв'язок - лініями між полями різних таблиць. Схема даних орієнтована на роботу з таблицями, яка відповідає вимогам нормалізації, між якими можуть бути встановлені відношення один–до–багатьох або один-до-одного із забезпеченням цілісності бази даних.
При встановленні зв'язку між таблицями вибирають поле, яке містить ту саму інформацію. У більшості випадків зв'язують ключове поле першої таблиці, яка є головною, з відповідним йому полем другої таблиці, яка є підлеглою. В цьому випадку поле підлеглої таблиці є зовнішнім ключем. Імена полів, за допомогою яких встановлюється зв'язок між таблицями, звичайно однакові, але можуть бути і різні. Причому Access автоматично визначає за обраним полем тип зв'язку між таблицями.
В СУБД Access існує внутрішнє та зовнішнє об’єднання записів таблиць.
|
Внутрішнє з’єднання це з’єднання при якому у вибірку включаються всі записи з головної таблиці і лише ті записи з підлеглих таблиць значення яких у з’єднуючих полях співпадають. |
|
Зовнішнє з’єднання – включає всі записи з таблиці, що створює одну сторону відношення і лише співпадаючи записи з таблиці, що створює другу сторону відношення. |
|
Цілісність – найважливіша вимога до бази даних, що виключає випадкове видалення або зміну зв’язаних даних. |
Створення зв'язків:
Рис. 3. Вікно діалогу Связи
Створення схеми даних дає можливість спростити конструювання багатотабличних форм, запитів і звітів, а також забезпечити підтримку цілісності взаємопов'язаних даних під час коригування таблиць.
Приклад схеми даних що містить 5 таблиць
Питання для самоконтролю
Таблиці та їх призначення.
Способи створення таблиці.
Порядок створення таблиці.
Описати загальні властивості поля.
Пояснити поняття "первинний ключ".
Індекси та їх призначення.
Охарактеризувати прості та складні індекси.
Описати засоби для модифікації таблиці.
Способи редагування даних у таблиці.
Побудова схеми даних в Access.
Яких типів можуть бути зв'язки між таблицями?
Лекція 3. Запити Microsoft Access: простий вибірковий запит
План
Поняття запиту. Класифікація запитів Access.
Створення запитів в СУБД MS Access.
Режим конструктора запиту. Структура бланку QBE.
Створення розрахункових полів, побудова виразів.
Критерії вибірки даних. Операції та вбудовані функції Access.
Література: Основна 2, 3, 6.
Додаткова 7, 8, 11, 16, 17.
Міні-лексикон: запити, конструктор запитів, бланк QBE, вибірка даних, перехресний запит, параметричний запит, запити-дії, побудова виразів.
1. Поняття запиту. Класифікація запитів Access.
З
апити
є одними з найважливіших інструментів
будь-якої системи управління базами
даних. Вони використовуються для відбору
груп записів різних таблиць, які
задовольняють визначений критерій.
Крім того, запити використовуються для
оновлення й додання нових записів у
таблиці, а також є основним джерелом
даних для форм та звітів.
2
.
Створення запитів в СУБД MS Access.
За допомогою Конструктора запитів. Для цього необхідно перейти на вкладку Запросы.
У
результаті виконання цих дій з'явиться
вікно Конструктора запитів (див.
пункт 3 цієї лекції).
За допомогою майстра.
3
.
Режим конструктора запиту. Структура
бланку QBE.
Запит у Access є графічним запитом по зразку, який відображається у вигляді таблиці, де заголовками стовпців є імена полів однієї або декількох таблиць бази даних. Запит може формуватися за допомогою QBE (Query By Example) − запитів за зразком, що дозволяють легко побудувати складний запит; або за допомогою інструкції SQL (Structured Query Language) − мови структурованих запитів, призначеної для організації запитів, відновлення і керування реляційними базами даних.
Вікно конструктора запитів бланку QBE розділене на дві панелі. Верхня панель містить схему даних запиту, що включає обрані для даного запиту таблиці. Нижня панель є бланком запиту за зразком − QBE, який потрібно заповнити.
У
вікні запиту відображаються обрані
таблиці і зв'язки між ними, наявні в
логічній схемі бази даних. При використанні
в запиті інших запитів або таблиць, не
поданих у логічній схемі бази даних, із
ними також можуть бути встановлені
зв'язки об'єднання, тобто зв'язки без
ключового поля.
При заповненні бланка запиту виконують наступні дії:
у рядок Поле необхідно включити імена полів, які використовуються в запиті;
у рядку Вывод на экран відзначити поля, що повинні бути включені в результуючу таблицю;
у рядку Условия отбора можна задати умови відбору записів;
у рядку Сортировка можна вибрати порядок сортування записів результату.
Після того як таблиці вибрані, потрібно додати поля у макет запиту. Слід додавати тільки ті поля, дані з яких будуть виводитись для перегляду або для створення умов відбору, групування або сортування.
Для цього у списку полів таблиці “Продаж товарів” виділити одне або декілька необхідних полів і перенести їх у стовпці бланка за допомогою подвійного кліка миші по імені необхідного поля (полів). Якщо одночасно перенести у бланк декілька полів, Access розмістить кожне поле в окремому стовпці.
|
Для
додавання нової таблиці/запиту
необхідно вибрати команду Запрос/ Добавить
таблицу, або натиснути кнопку
Добавить таблицу
|
Для
збереження даних необхідно натиснути
на кнопку Для відкриття вже існуючого
запиту в режимі конструктора, слід
перейти у вікно бази даних, вибрати
вкладку “Запросы”, вибрати необхідний
запит та натиснути кнопку “Конструктор”.
Якщо запит уже відкрито у режимі таблиці,
то для переходу у режим макета запиту
потрібно натиснути кнопку “Вид”
на панелі інструментів
або натискання кнопки “Запуск”
.
3. Створення розрахункових полів, побудова виразів.
Для створення виразів у Access підтримується такі категорії операторів:
Арифметичні – виконання операцій додавання (+), віднімання (-), множення (*), ділення (/).
Оператори порівняння – порівнюють два операнда та повертають логічні значення (True або False), які відповідають результату порівняння
Логічні оператори – для об’єднання результатів двох або більше виразів порівняння у єдине ціле. Логічні оператори можуть складатись з виразів, які повертають логічні значення True, False або Null. Логічні оператори завжди потребують двох операндів, за винятком Not – логічного заперечення.
Оператор And, повертає результат кон’юнкції (логічне И) для двох виразів.
Оператор Or, повертає результат диз’юнкції (логічного ИЛИ) для двох виразів.
Оператори злиття текстових значень (конкатенації). Використовуються два символи (& – амперсант) або (+). Призначено для об’єднання двох текстових значень в один рядок.
Спеціальні оператори порівняння:
Оператор Is, використовується для визначення:
змінної або записів поля, що мають порожні значення – використовується вираз Is Null (повертає True при позитивному значені);
змінної або записів поля, які мають не порожні значення – використовують вираз Is Not Null.
Оператор Like – використовується для порівняння двох текстових виразів.
При використанні оператора Like застосовуються такі символи шаблона:
? – заміщує будь-який одиночний символ;
* – заміщує будь-яку кількість допустимих символів;
# – заміщує будь-яку одиничну цифру.
Оператор In, визначає, чи буде текстове значення поля одним із елементів зазначеного списку. Якщо значення поля міститься у зазначеному списку, оператор In повертає значення True, в іншому разі повертається значення False
Оператор Between … And, визначає, чи знаходиться числове значення у визначеному діапазоні. Якщо значення поля, знаходяться у діапазоні, оператор Between … And повертає значення True, у протилеж-ному разі – False. Також можна застосувати логічний оператор Not для перевірки протилежної умови.
& |
Вирази – це будь яка комбінація операторів, констант, функцій, імен полів, елементів управління або їхніх властивостей, результатом якої є конкретні значення. |
За допомогою виразу задаються значення багатьох властивостей та аргументів команд, визначаються умови відбору й обчислювальні поля у запитах.
Поля, що обчислюються, відображають дані, які розраховуються на основі значень інших полів. Результати обчислень, що виводяться у полі, не зберігаються у таблиці. Замість цього, обчислювання виконуються кожний раз, коли виконується запит. Тому результат завжди відображає поточний зміст даних.
Побудова виразів виконується за допомогою вікна Построитель выражений. Для виклику вікна Построитель выражений використовується кнопка Построить панелі інструментів вікна конструктора запиту, або відповідна команда контекстного меню поля таблиці QBE. При цьому курсор “мишки” необхідно розмістити у рядку Поле вільного стовпця шаблону QBE.
|
УВАГА! При додаванні полів у макет запиту необхідна наявність в області схеми даних тих таблиць або запитів, які пов’язані між собою та містять потрібні поля. |
5. Критерії вибірки даних. Вбудовані функції ACCESS.
У
мови
відбору – це обмеження, яке користувач
бази даних встановлює на запит з метою
вибірки потрібних записів.
Якщо вирази вводяться у декілька комірок “Условие отбора” або “или”, вони автоматично об’єднуються за допомогою операторів And та Or таким чином:
якщо вирази знаходяться у різних комірках, але в одному рядку, то автоматично застосовується оператор And, а це означатиме, що будуть повертатися тільки ті записи, які одночасно відповідають вказаним у цих комірках умовам відбору;
якщо вирази знаходяться у різних рядках бланка запиту, то автоматично застосовується оператор Or, а це означатиме, що будуть повертатись тільки ті записи, які відповідатимуть одній з вказаних умов.
Приклади використання декількох умов відбору записів у бланку запиту:
–
одне поле з оператором Or
– два поля з оператором And
три поля з And і Or
Сортування даних:
Вбудовані функції
Для визначення полів, що обчислюються можна скористатись вбудованими функціями Access або виразами, які створенні користувачем, за винятком статистичних функцій.
Функції змішаного типу
ІІf (.) − повертає одно з двох значень, в залежності від оцінки
Синтаксис функції
IIf(«exp», «truepart», «falsepart»)
Аргумент |
Опис |
«exp» (выражение) |
Обов’язковий аргумент. Вираження, що потрібно оцінити |
«truepart» |
Обов’язковий аргумент. Значення або вираз, що буде повернено, якщо выражение буде оцінено як True (істина). |
«falsepart» |
Обов’язковий аргумент. Значення або вираз, що буде повернено, якщо выражение буде оцінено як False (неправда). |
Приклад. Обчислити поле Ціна реалізації (CENA_R), що розраховується за таким правилом: якщо кількість проданих (KOL) товарів перевищує 10, то ціна за одиницю товару (CENA) зменшується на 3%, в протилежному випадку − залишається не змінною.
Інші приклади функцій змішаного типу див. у додатку В.
Функції обробки текстових даних
Format(.); Format$(.)− повертає значення типу Variant (String), що містить вираз, відформатований відповідно до інструкцій, заданих в описі формату.
Синтаксис функції:
Format («expr»; «fmt»; «firstweekday»; «firstweek»)
Аргумент |
Опис |
expr (выражение) |
Обов’язковий аргумент. Буд-який допустимий вираз |
fmt (формат) |
Необов’язковий аргумент. Припусти-ме ім’я або визначене користувачем вираження формату |
firstweekday (первый_день_недели) |
Константа, що задає перший день тижня |
firstweek (первая_неделя_года) |
Необов’язковий аргумент. Константа, що визначає перший тиждень року |
Значення:
Аргумент формат може приймати такі значення:
Аргумент |
Опис |
d |
номер дня |
dddd |
назва дня тижня |
m, mm |
номер місяця |
mmm |
назва місяця(перші три літери) |
q |
номер кварталу |
yyyy |
номер року |
Аргумент первый_день_недели приймає такі значення:
Константа |
Значення |
Опис |
vbUseSystem |
0 |
Використовується значення NLS API |
VbSunday |
1 |
Неділя (за замовчанням) |
vbMonday |
2 |
Понеділок |
vbTuesday |
3 |
Вівторок |
vbWednesday |
4 |
Середа |
vbThursday |
5 |
Четвер |
vbFriday |
6 |
П’ятниця |
vbSaturday |
7 |
Субота |
Аргумент первая_неделя_года може приймати такі значення:
Константа |
Значення |
Опис |
vbUseSystem |
0 |
Використовується значення NLS API |
vbFirstJan1 |
1 |
Починається з тижня, на яку припадає дата «1 січня» (за замовчанням) |
vbFirstFourDays |
2 |
Починається з тижня, до складу якої входять щонайменше чотири дні року |
|
Аргументи первый_день_недели та первая_ неделя_года необов’язкові. |
І
нші
приклади текстових функцій див. у додатку
В.
Функції обробки дати та часу
DateDiff(.) − Повертає значення типу Variant (Long), що вказує різницю між двома датами за допомогою специфікації d/w/m/yyyy (пояснення цих аргументів див. у попередньому прикладі)
Синтаксис функції
DateDiff («interval»; «date1»; «date2»; «firstweekday»; «firstweek»)
Аргумент |
Опис |
interval (інтервал) |
Інтервал, в якому буде обчислена різниця між двома датами |
«date1»; «date2» |
Два поля дати, різницю між якими необхідно обчислити. |
Приклад: Обчислити поле Різниця між датами, що розраховує інтервал по місяцях між датою продажу та стандартною − 23.10.1999 (створюється нове поле).
І
нші
приклади функцій обробки дати та часу
див. у додатку В.
Функції по підмноженню
DAvg(.) − повертає середнє для набору значень, що належить зазначеному набору (підмножині) записів
Синтаксис функції
DAvg(«expr»; «domain»; «criteria»)
Аргумент |
Опис |
expr |
Вираз, який визначає поле, що містить усредняючі дані |
domain |
Строковий вираз, що визначає набір записів, що утворять підмножину. Може представляти ім'я таблиці чи запиту. |
criteria |
Необов'язковий строковий вираз, що обмежує діапазон даних, для яких розраховується середнє значення. |
Інші приклади функцій по підмноженню див. у додатку В.