При формуванні звіту MS Access двічі проходить дані.
На першому проході вона обчислює вирази у детальних рядках, підсумки у групах, загальні підсумки для всього звіту та визначає довжину звіту.
На другому проході MS Access обчислює всі вирази, що базуються на підсумках першого проходу.
Така технологія обчислення звіту дає можливість в області даних та розділах обчислити відсотки від загальних значень. Обчислення відсотків досягається, якщо встановити властивість «Формат поля» у значення «Процентний».
Робота з даними
Можливості та типи запитів
Запит — один з найбільш потужних об’єктів MS Access, який дозволяє ефективно представити інформацію, що містять таблиці, з певними властивостями. В деякому розумінні запит подібний до фільтрів, коли з таблиць будується відбір за певною умовою. Але на відміну від фільтру запит дозволяє отримати більш змістовний результат.
Перш за все, це пояснюється тим, що фільтр дає інформацію для перегляду або друку, але, на відміну від запиту автоматично не зберігається, як окремий об’єкт бази даних.
Запити, маючи таку властивість, дозволяють динамічно поновлювати інформацію у своїх таблицях, якщо у таблицях бази даних виникла зміна інформації.
Крім цього, запит має і зворотну дію: якщо змінювати інформацію у його таблицях, то таблиці бази даних, на базі яких побудований запит, будуть адекватно змінювати свою інформацію.
Створення запитів у середовищі MS Access
Будувати запит необхідно відповідно з постановкою задачі. Одним з найпростіших механізмів є конструктор. Для того, щоб скористатись цим механізмом, перш за все у вікні побудови бази даних необхідно перейти на закладку «Запросы».
Через кнопку «Создать», будується запит. На цьому кроці можна вибрати декілька способів побудови запиту, в тому числі за допомогою конструктора.
В результаті з¢являється вікно, у верхній частині якого необхідно розмістити таблиці, інформація з яких нас цікавить: поступове додавання таблиць здійснюється у вікні «Добавление таблиц»».
У нижній частині необхідно вказати поля запиту, в тому числі ті, що якісно впливають на запит, але значення яких не виводиться. Причому тут можна визначитись і відносно сортування по необхідних полях.
Щоб внести інформацію щодо сортування, значення вибірки тощо необхідно в нижній частині вікна: тут діє так звана розмітка QBE — це набір текстових вікон, які мають назву комірок, за допомогою яких здійснюється опис запиту, стати на перехрестя відповідного рядка і стовпчика.
Після визначення назви запиту, його можна відкрити. В результаті одержується деякий результат у вигляді таблиці. Ця таблиця надалі може використовуватись у будь-яких операціях на рівні із звичайними таблицями.
SQL запити
SQL (Structured Query Language — структурована мова запитів) — це стандартна мова програмування, яка має свої корені у 70-х роках минулого століття, коли фірма IBM створювала програмне забезпечення для роботи з реляційними базами даних. Сьогодні існує міжнародний стандарт мови SQL, якого дотримуються розробники програмного забезпечення з обробки реляційних баз даних.
У MS Access вбудовано деякий діалект мови SQL, який використовується в таких діях, як побудова запитів на вибірку, підсумовуючих запитів, перехресних запитів, запитів на побудову таблиць, запитів на оновлення, додавання або видалення записів таблиці.
Мову SQL MS Access використовує при роботі з базою даних, в тому числі неявно, коли користувач діє в рамках звичайного запиту — кожний запит, незалежно від того, як він створювався, зберігається у вигляді інструкції SQL.
Необхідність використання мови SQL виникає в різних випадках. Наприклад, коли є необхідність побудувати так званий підлеглий запит, результати якого використовуються в якості умов в інших запитах.
Синтаксис діалекту MS SQL необхідно знати, щоб безпосередньо на цій мові виконувати ті чи інші SQL запити.
Для початку цікаво познайомитись, як в термінах SQL зберігається будь-який запит. Для цього необхідно лише скористатись дією меню MS Access «Вид» — «Режим SQL», коли стає активним той чи інший запит.
Ядром мови SQL є інструкція SELECT, яка використовується для відбору полів і записів таблиць бази даних. Синтаксис інструкції SELECT використовує п¢ять основних речень і його можна представити в наступному вигляді:
SELECT <список полів>
FROM <список таблиць>
[WHERE <специфікація вибору записів>]
[GROUP BY <специфікація групування>]
[HAVING <специфікація вибору груп>]
[ORDER BY <специфікація сортування>]
Тут речення FROM визначає таблиці або запити, які є джерелом даних для запиту, що створюється.
Речення WHERE та HAVING визначають умови відбору записів і груп записів відповідно.
Речення GROUP BY визначає поле (поля) для подальшого формування запиту відносно груп даних з однаковими значеннями цього поля або полів.
Речення ORDER BY визначає сортування записів.
Крім цих речень в кожному діалекті мови SQL можуть зустрітись інші речення стандарту SQL. У MS Access реалізовані чотири з них:
TRANSFORM — для побудови перехресного запиту;
IN — для зв’язку з віддаленою базою даних;
DISTINCTROW — для відбору унікальних записів;
WITH OWNERACCESS OPTION — для побудови запиту користувачами, що не мають прав доступу до відповідних таблиць цього запиту.
Приклад запиту з пов’язаних між собою таблиць Особи, Освіта щодо освіти жінок з сортуванням за прізвищем записів, які містять поля Прізвище, Освіта:
SELECT Особи.Прізвище, Освіта.Освіта
FROM Особи INNER JOIN Освіта
ON Особи.КодОсвіти = Освіта.КодОсвіти
WHERE (((Особи.Стать)="Ж"))
ORDER BY Особи.Прізвище;
Для формування списків та специфікацій інструкції SELECT використовуються вирази, що визначають деяке значення. Синтаксис виразів передбачає структуру, що базується на константах того чи іншого типу, функціях та виразах.
Вирази, функції і константи з’єднуються між собою операторами: арифметичними — для побудови виразу з операндів числового типу (+, —, *, /, \, ^, MOD), логічними — для побудови виразу з операндів логічного типу (AND, OR, NOT) і операндів числового типу (=, >, >=, <=, <, <>), текстовими — для побудови виразу з операндів текстового типу (&).
Приклади виразів:
"beta"&"01" – конкатенація рядків beta та 01
price*50 — добуток змінної (або поля) числового типу price та числа 50
"Дата народження: "+CDATE(date) — конкатенація рядка Дата народження: та текстового виразу після перетворення змінної (поля) date типу Дата/Время у значення текстового типу.
До запиту SQL часто включаються параметри, значення яких можуть бути введені користувачем або з елементів управління активної форми. Для використання таких параметрів необхідно їх попередньо визначити за допомогою оператора PARAMETERS, синтаксис якого передбачає присутність імені параметру (ідентифікатору) та його типу:
PARAMETERS < ідентифікатор> <тип даних> …
Серед типів даних є логічний (Bit), грошовий (Currency), дата/час (DateTime), цілий (Integer), текстовий (Text) та інші.
Інструкції SQL використовуються також і для видалення, вставки або оновлення даних, а також для побудови нової таблиці з даними що існують. Запити на зміну даних — це достатньо потужний засіб, оскільки така дія впливає одразу на множину записів. Наприклад, інструкції UPDATE або DELETE діють на всі записи базових таблиць, для яких виконується умова відбору.
Разом з інструкцією видалення існує інструкція додавання записів INSERT. Для побудови нової таблиці із значеннями, що вибрані з одної або декількох таблиць, використовується інструкція SELECT INTO ….
Побудова програмного забезпечення
Макроси
Використання макросів є одним із способів побудови програмного забезпечення. У MS Access можна визначити макрос, який виконує майже всі дії, які можна реалізувати на клавіатурі або мишею.
Головна властивість макросів та, що вони можуть виконуватись як відповідь на ту чи іншу подію. Саму подію можна трактувати як твердження, яке, зрозуміло, має два значення: істина або хибність. Макроси використовуються для виконання таких дій:
— відкриття або закриття об’єктів MS Access — таблиць, запитів, форм, звітів, макросів;
— відмова події, яка здійснила запуск макросу, і навіть вихід з програмного забезпечення;
— обчислення та встановлення значень елементів управління форм, звітів;
— емуляція роботи з клавіатурою;
— фільтрація даних;
— визначення спеціального рядка меню;
— відкриття або закриття панелі інструментів;
— виконання будь-якої команди будь-якого меню MS Access;
— переходи між вікнами та стандартні дії з ними (переміщення, зміна розмірів і таке інше) ;
— виведення інформаційних повідомлень;
— вимикання деяких попереджуючих повідомлень з боку MS Access;
— копіювання, перейменування, видалення об’єктів MS Access;
— імпорт (експорт) таблиць баз даних, електронних таблиць, текстових файлів;
— запуск програмного забезпечення та передача йому параметрів
Для побудови того чи іншого макросу необхідно визначитись з послідовністю його макрокоманд. Ці макрокоманди можна вибрати під час створення макросу за допомогою кнопки «Создать» у закладці «Макросы».
У таблиці 6 наведені макрокоманди та їх короткий зміст.
Таблиця 6. Макрокоманди MS Access
Макрокоманда
| Зміст
|
Восстановить
| Поновлення попередніх розмірів вікна.
|
ВывестиВФормате
| Виведення даних, що містяться у вказаному об’єкті бази даних MS Access (таблиці, формі, звіті або модулі) у файл в форматі MS Excel 97 (*.xls), в текстовому форматі MS-DOS (*.txt) або в форматі RTF (*.rtf). Також можливе виведення у файли формату HTML (*.html), Microsoft Internet Information Server (*.htx, *.idc) або у файл в форматі сторінок Microsoft ActiveX Server (*.asp).
|
ВыводНаЭкран
| Визначає режим виведення на екран результатів виконання поточних операцій. Наприклад, ця макрокоманда дозволяє вивести на екран або сховати проміжні результати виконання макросу.
|
ВыделитьОбъект
| Виділення вказаного об’єкта бази даних.
|
ВыполнитьКоманду
| Виконання команди MS Access.
|
Выход
| Вихід з MS Access. При цьому передбачений вибір параметрів зберігання об’єктів бази даних.
|
ДобавитьМеню
| Виконання наступних дій:
— побудова спеціального рядка меню для форми або звіту. Спеціальний рядок меню замінює вбудований рядок меню форми або звіту.
— побудова спеціального контекстного меню для форми, елемента управління або звіту. Спеціальне контекстне меню замінює вбудоване контекстне меню форми, елемента управління або звіту.
— побудова загального рядка меню. Загальний рядок меню замінює вбудоване головне меню у всіх вікнах MS Access, за винятком тих, що містять спеціальні рядки меню форми або звіту.
— побудова загального контекстного меню. Загальне контекстне меню замінює вбудоване контекстне меню для всіх полів таблиць або запитів в режимі «Таблицы», форм в режимі «Формы», режимі «Таблицы» і режимі попереднього перегляду, а також звітів в режимі попереднього перегляду, за виключенням тих, де користувач додав спеціальне контекстне меню форми, звіту або елемента управління.
Примітка. Для побудови нових меню рекомендується все ж таки використовувати діалогове вікно «Настройка панелей инструментов», з меню «Вид» команди — «Панели инструментов» і кнопки «Настройка».
|
ЗадатьЗначение
| Завдання значень поля, елемента управління або властивості в формі
|
ЗадатьКомандуМеню
| Завдання стану команд спеціального рядка меню або загального рядка меню для активного вікна.
|
Закрыть
| Зачинення вказаного вікна, вікна MS Access або поточного вікна, за угодою.
|
ЗапускЗапросаSQL
| Запуск запиту на зміни MS Access за допомогою відповідної інструкції SQL. Крім того, ця макрокоманда дозволяє запустити керуючий запит.
|
ЗапускМакроса
| Запуск макросу. Можна вказувати макрос з групи макросів.
|
ЗапускПриложения
| Запуск із MS Access програмного забезпечення Windows або MS-DOS, наприклад, Microsoft Excel, Microsoft Word для Windows або Microsoft PowerPoint. Наприклад, ця макрокоманда дозволяє виконати вставку електронної таблиці MS Excel в базу даних MS Access.
|
ЗапускПрограммы
| Виклик функції Visual Basic.
|
КомандыКлавиатуры
| Передача натискань клавіш безпосередньо у MS Access або в активне програмне забезпечення MS Windows.
|
КопироватьОбъект
| Копіювання вказаного об’єкта бази даних в іншу базу даних MS Access або в ту ж саму базу даних під новим ім’ям. Наприклад, цю макрокоманду використовують для копіювання або зберігання існуючого об’єкта в іншій базі даних або при використанні існуючого об’єкта в якості прототипу нового об’єкта.
|
КЭлементуУправления
| Переведення фокусу на вказане поле або елемент управління у поточному записі форми, таблиці, запиту. Крім цього, ця макрокоманда використовується для автоматичного переміщення по формі у відповідності з визначеними умовами. Наприклад, якщо оператор введе «Так» в поле «Холост», то поле «Супруг» буде пропущено автоматично, а фокус переданий наступному елементу управління.
|
НаЗапись
| Зробити вказаний запис поточним для таблиці, форми або записів запиту.
|
НайтиЗапись
| Пошук даних, що задовольняють умовам пошуку цієї макрокоманди.
|
НаСтраницу
| Передача фокусу в активній формі першому елементу управління. Ця макрокоманда використовується при побудові багатосторінкових форм з групуванням даних на різних сторінках.
|
ОбновитьОбъект
| Завершення всіх відкладених операцій оновлення вказаного об’єкта бази даних або активного об’єкта бази даних, за угодою. При необхідності, виконується перерозрахунок значень елементів управління в цьому об’єкті.
|
Обновление
| Оновлення даних у вказаному елементі управління в активному об’єкті шляхом повторного перегляду даних.
|
ОстановитьВсеМакросы
| Зупинка виконання всіх макросів, що виконуються
|
ОстановитьМакрос
| Зупинка виконання поточного макросу, що виконується
|
ОткрытьЗапрос
| Відкриття запиту на вибірку або перехресного запиту в режимі «Таблицы», в режимі «Конструктор» або в режимі попереднього перегляду. Крім цього, ця макрокоманда може вказати для запиту режим введення даних.
|
ОткрытьМодуль
| Відкриття вказаної процедури в модулі Visual Basic. Ця процедура може бути процедурою Sub, процедурою Function або процедурою обробки подій.
|
ОткрытьОтчет
| Відкриття звіту в режимі Конструктор, в режимі попереднього перегляду або виведення звіту на друк. При цьому допускається вибірка записів, що включаються в звіт.
|
ОткрытьТаблицу
| Відкриття таблиці в режимі «Таблица», в режимі «Конструктор» або в режимі попереднього перегляду. При цьому допускається вибір режиму введення даних в таблицю.
|
ОткрытьФорму
| Відкриття форми в режимі «Форма», в режимі «Конструктор форми», в режимі попереднього перегляду або в режимі «Таблица». При цьому допускається вибір режиму введення даних та режиму вікна, а також відбір записів, які необхідно показати у формі.
|
ОтменитьСобытие
| Відміна події, яка викликала запуск макросу.
|
ОтправитьОбъект
| Включення вказаного об’єкта в режимі «Таблица», «Форма», «Отчет» або «Модуль MS Access» у повідомлення електронної пошти, перегляд та відправлення. Допускається включення об’єктів у форматі MS Excel (*.xls), текстовому форматі MS-DOS (*.txt), форматі RTF (*.rtf) або HTML у повідомлення електронної пошти Microsoft Exchange, Microsoft Mail, Microsoft Windows для робочих груп або іншого програмного забезпечення електронної пошти, яке використовує інтерфейс MAPI (Microsoft Mail Applications Programming Interface). Є можливість пересилки об’єктів MS Access у повідомлення електронної пошти VIM- інтерфейсу.
|
ПанельИнструментов
| Виведення на екран або видалення з екрану вбудованої або спеціальної панелі інструментів. Користувач має можливість вказати виведення вбудованої панелі інструментів у всіх вікнах MS Access або тільки в одному вікні, для якого ця панель інструментів призначена, наприклад, вивести панель інструментів «Режим» форми тільки у вікні форми в режимі «Форма».
|
Переименовать
| Перейменування вказаного об’єкта бази даних.
|
ПесочныеЧасы
| Надати вказівнику форму піскового годинника, або іншого вказаного значка, на час виконання макросу. Ця макрокоманда дозволяє побудувати вказівник, що свідчить про виконання дій поточним макросом. Це особливо зручно, коли виконання макрокоманди або самого макросу займає достатньо великий час.
|
Печать
| Друк активного об’єкта відкритої таблиці бази даних.
|
ПоказатьВсеЗаписи
| Відміна будь-якого поточного фільтру.
|
Преобразовать
БазуДанных
| Перетворення бази даних при імпорті або експорті даних між поточною базою даних MS Access та іншою базою даних
|
ПреобразоватьТекст
| Перетворення тексту при імпорті або експорті даних між поточною базою даних MS Access та текстовим файлом (а також файлом HTML (*.html)).
|
Преобразовать
ЭлектроннуюТаблицу
| Перетворення електронної таблиці при імпорті або експорті даних між поточною базою даних MS Access та файлом електронної таблиці.
|
ПрименитьФильтр
| Застосування фільтру, запиту або інструкції WHERE (SQL) до таблиці, форми або звіту для вибірки і сортування записів.
|
Развернуть
| Збільшення розмірів активного вікна до розмірів вікна MS Access.
|
Свернуть
| Згортання активного вікна.
|
СдвигРазмер
| Зміна місця та розмірів активного вікна.
|
Сигнал
| Подання звукового сигналу через динамік комп’ютера.
|
СледующаяЗапись
| Знаходження наступного запису, який задовольняє умовам, що вказані у попередній макрокоманді «Найти» — «Запись» або у діалоговому вікні «Поиск» в поле, яке відчиняється командою «Найти» з меню «Правка».
|
Сообщение
| Виведення на екран вікна, яке містить попередження або інформаційне повідомлення.
|
Сохранить
| Збереження вказаного об’єкта MS Access, або активного об’єкта, якщо об’єкт не вказаний.
|
УдалитьОбъект
| Видалення вказаного об’єкта бази даних.
|
УстановитьСообщения
| Ввімкнення або вимкнення виведення системних повідомлень.
|
Кнопкові форми
Побудова кнопкових форм — це фінальна робота, яка в деякому розумінні логічно і структурно завершує побудову бази даних. Здійснюється вона у закладці «Формы» за допомогою кнопки «Создать» та «Конструктора».
На відміну від побудови форм для введення даних, тут немає потреби у визначенні таблиць та їх полів. Головний технологічний прийом для виготовлення кнопкової форми — це розміщення елементів управління Кнопка у площині форми та надання цим елементам однієї властивості або функції: завантаження того чи іншого об’єкта.
Крім цього, звичайно необхідно потурбуватись про дизайн форми: вибрати малюнок для фону, вдало розмістити кнопки а також вибрати їх розмір, картинку або підпис на них. Часто необхідно побудувати кнопкову форму, з якої можна відкривати форми, звіти, запити. Розробляються також і такі кнопкові форми, які у свою чергу можуть відкривати інші кнопкові форми.
Встановлення розмірів форми та визначення малюнка здійснюється за допомогою вікна властивостей форми та закладки «Макет» в цьому вікні.
Для розміщення кнопок спочатку вмикається панель інструментів, якщо її немає на екрані монітору. Потім, попередньо вмикаючи на цій панелі кнопку майстра побудови елементів управління, вибирається елемент «Кнопка». Далі вказується мишею місце його розміщення на кнопковій формі.
Після цього майстер побудови елемента управління пропонує діалог:
перший крок — вибір категорії та дії. Тут в залежності від категорії відкривається відповідна множина дій, наприклад, можна вибрати категорію «Работа с формой» та дію «Открытие формы».
другий крок — вибір вже підготовленого об’єкта, наприклад, деякої конкретної форми.
третій крок — вибір множини даних об’єкта, наприклад, множини записів, а саме можна вибрати «Открыть форму и показать все записи».
четвертий крок — вибір об’єкта розміщення на кнопці: текст або малюнок, наприклад, текст і змінити текст «Открытие формы» на необхідний за змістом даної форми.
п’ятий крок — визначення ідентифікатора або назви, елемента управління. Тут можна погодитись із запропонованим з боку майстра ідентифікатором.
Нарешті, необхідно змінити значення деяких властивостей форми, які пропонуються конструктором форм за угодою у випадку конструювання форм для таблиць. Зведемо ці зміни у таблицю 7.
Таблиця 7. Зміни властивостей форми
Властивість
| Значення за угодою
| Встановлене значення
|
Полосы прокрутки
| Все
| Отсутствуют
|
Область выделения
| Да
| Нет
|
Поле номера записи
| Да
| Нет
|
Разделительные линии
| Да
| Нет
|
Заголовок форми розміщуємо у верхній частині форми за допомогою інструменту , вибираючи шрифт, розмір шрифту та колір.
Список літератури
1. Вейскас Д. Эффективная работа с Microsoft Access 7.0 для Windows 95/ Перев. с англ. — СПб.: Питер, 1997. — 848 с.
2. Крамм Р. Системы управления базами данных dBASEII для персональных компьютеров. — М.: Финансы и статистика, 1988. — 283 с.
3. Каратыгин С.А., Тихонов А.Ф., Тихонова Л.Н. Работа в Visual FoxPro на примерах: М: БИНОМ, 1995. — 512 с.
4. В.В.Попов, Є.С.Вакал, О.В.Обвінцев, В.В.Личман. Розробка учбових баз даних у MS Access. — Київ, 2001. — 33 с.
Зміст
Вступ
|
|
Основні поняття баз даних та систем управління базами даних
|
|
Архітектура MS Access
|
|
Побудова бази даних
|
|
Таблиці
|
|
Проектування структури таблиць
|
|
Індекси та ключі
|
|
Побудова та редагування структури таблиць
|
|
Зв’язування таблиць
|
|
Форми
|
|
Види форм
|
|
Проектування та побудова форм
|
|
Редагування форм
|
|
Пошук та сортування даних
|
|
Звіти
|
|
Механізми створення звітів
|
|
Редагування звіту
|
|
Виконання обчислень та підведення підсумків
|
|
Об¢єднання текстових значень і приховування даних, що повторюються
|
|
Обчислення відсотків
|
|
Робота з даними
|
|
Можливості та типи запитів
|
|
Створення запитів у середовищі MS Access
|
|
SQL запити
|
|
Побудова програмного забезпечення
|
|
Макроси
|
|
Кнопкові форми
|
|
Список літератури
|
|