Створення складних і перехресних запитів

Для створення більш складних запитів Вам може знадобитися конструктор запитів, що є простим і наочним засобом створення досить складних запит

Перехресні запити

Перехресні запити – це запити, у яких відбувається статистична обробка даних. Результати обробки виводяться у вигляді таблиці, що дуже схожа на зведену таблицю Excel. Перехресні запити мають наступні переваги:

1. Можливість обробки значного обсягу даних і виводу їх у форматі, що дуже добре підходить для автоматичного створення графіків і діаграм.

2. Простота і швидкість розробки складних запитів з декількома рівнями деталізації

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

Однак можна задати сортування по зростанню чи по спаданню, або відсутність впорядкування для заголовків рядків. Крім того, у перехресному запиті можна:

1) Вказати поле, що є заголовком рядка.

2) Задати поле чи кілька полів, що є заголовками стовпців, а також умова, що визначає значення в стовпцях.

3) Вказати місце розміщення даних у таблиці.

Ассеs SQL пропонує для позначення перехресного запиту використовувати ключове слово transform(transform не є зарезервованим словом ANSl SQL.

Перехресні запити зручні для представлення даних у вигляді таблиці, однак на них іноді досить складно будувати звіти. Як приклад сформуємо два перехресних запити до бази даних "Борею" для виводу щомісячних продажів товару (по його типові) і щоквартальних продажів товару (по його типові). Подібні таблиці, що містять підсумки, що підводяться через визначені проміжки часу, наприклад через кожен чи місяць квартал, звичайно використовуються як дані для графіків.

Створення перехресних запитів за допомогою Майстра перехресних запитів.

Створення перехресного запиту за допомогою Майстра перехресних запитів здійснюється таким чином:

1. В вікні бази даних слід вибрати пункт Запросы, клацнути по кнопці Создать.

2. В діалоговому вікні Новый запрос вибрати із списку значення Перекресный запрос; тим самим буде запущено Майстра, який проведе через всю послідовність дій по створенню перехресних запитів.

3. У першому діалоговому вікні Майстра перехресних запитів вибрати таблицю чи запит, який містить поля, присутні в перехресному запиті.

4. У другому діалоговому вікні вибрати від одного до трьох полів, які будуть заголовками рядків.

5. В третьому діалоговому вікні вибрати поле, значення якого будуть використовуватись як заголовки стовпців.

6. В четвертому діалоговому вікні вибрати поле із узагальнюючою інформацією, функцію для проведення обчислень.

7. В п’ятому і останньому діалоговому вікні ввети ім’я запиту(або залишити ім’я за замовчуванням) і вирішити чи відкривати новий запит з початку в режимі таблиці чи коструктора. Клацнути по кнопці Готово і Майстер створить запит.

Створення таблиць за допомогою майстра,

в режимі конструктора,

Шляхом введення даних

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

При створенні таблиці слід керуватися наступними принципами:

таблиця повинна містити всі необхідні відомості;

відомості в таблиці або між таблицями не повинні дублюватися;

кожне поле в таблиці містить конкретний факт по темі таблиці;

дані слід розбити на найменші логічні одиниці, наприклад, ім'я, прізвище;

Таблицю можна створити декількома способами:

1. За допомогою майстра таблиць (Table Wizard) .

2. У режимі конструктора таблиці (Table Design).

3. За рахунок імпорту даних із зовнішніх джерел.

4. За рахунок зв'язку із зовнішньою таблицею.

Майстри в Access є зручним і ефективним засобом побудови бази даних, таблиць, запитів, форм і так далі Вікно майстра таблиці можна відображувати на екрані декількома способами:

1. У вікні бази даних на панелі Об'єкти (Objects) вибрати значок Таблиці (Tables) і двічі клацнути значок Створення таблиці за допомогою майстра (Create Table By Using Wizard) (див. мал. 23.2).

2. У вікні бази даних на панелі інструментів натискувати кнопку Створити (New) (див. мал. 23.2) і в діалоговому вікні Нова таблиця (New Table) вибрати Майстер таблиць (Table Wizard) (мал. 23.11).

Мал. 23.11 Вибір майстра таблиць у вікні Нова таблиця

Після вибору у вікні бази даних на панелі Об'єкти (Objects) значка Таблиці (Tables) і подвійного клацання значка Створення таблиці за допомогою майстра (Create Table By Using Wizard) (див. мал. 23.2), на екрані відображуватиметься вікно майстра таблиць. У цьому вікні положенням перемикача виберіть область використання створюваної таблиці Ділове вживання (Business) або Особисте вживання (Personal) (мал. 23.12). Вочевидь, що від сфери застосування бази даних залежить структура таблиці, використовувані в ній поля.

Мал. 23.12 Вибір полів створюваної таблиці

У списку Зразки таблиць (Sample Tables) виділите, якого типа таблиця буде створена, в списку Зразки полів (Sample Fields) виберіть, які поля матиме таблиця.

Кнопки майстри таблиць, розташовані між списками мають наступне призначення:

< — видалення виділеного поля таблиці;

<< — видалення всіх полів таблиці;

> — введення виділеного поля таблиці;

>> — введення всіх полів таблиці.

Вибрані поля перемістяться в список Поля нової таблиці (Fields in my new table). Перемістити поле з одного списку іншою можна не лише кнопками, але і подвійним клацанням миші.

За бажання ви можете натискувати кнопку Перейменувати поле (Rename Field) і ввести нове ім'я поля у вікно, що з'явилося на екрані. У одну таблицю можна послідовно ввести поля, призначені як для ділового, так і для особистого вживання і з різних зразків таблиць. Імена полів не повинні повторюватися. Якщо серед зразків полів немає потрібного вам поля, то його можна створити.

Натискуйте кнопку Далі (Next) і в наступному вікні положенням перемикача виберіть спосіб визначення ключа (мал. 23.13):

Microsoft Access автоматично визначає ключ (Yes set а primary key for me) — ключове поле задається автоматично. Окрім вибраних вами полів таблиця міститиме поле Лічильник (AutoNumber).

Користувач визначає ключ самостійно (No, I'll set а primary key) — ключове поле вибирається користувачем.

Мал. 23.13 Завдання імені таблиці і вибір способу визначення ключа

Призначення ключового поля розглянуте нижче.

Введіть ім'я таблиці або погодитеся з тим ім'ям, яке пропонується автоматично в полі Задайте ім'я для нової таблиці (What Do You Want To name Your Table?) .

Хоча імена полів, елементів управління і об'єктів можуть містити пропуски і розділові знаки, їх не рекомендується включати в імена полів, особливо, якщо передбачається використовувати дані спільно з іншими програмами. При деяких обставинах пропуски можуть викликати конфлікти в програмах Visual Basic. Як роздільники слів можна використовувати прописні букви або символ підкреслення, наприклад, ім'я поля Дата народження можна записати як Дата народження.

Потім майстер визначає співпадаючі поля в декількох таблицях. У останньому вікні майстра створення таблиці задайте положення перемикача, аби визначити подальші дії із створення таблиці:

Змінити структуру таблиці — передбачає внесення до таблиці нових полів.

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

Ввести даних в таблицю за допомогою форм, що створюються майстром, — створює форму для введення даних.

На будь-якому етапі створення таблиці після натиснення кнопки Готово (Finish) відкриється нова таблиця.

Ключове поле

Одне або декілька полів (стовпців), комбінація значень яких однозначно визначає кожен запис в таблиці, називається первинним ключем. Ключове поле дозволяє уникнути виникнення помилок при введенні даних, оскільки вони в цьому полі не можуть повторюватися. Як ключове поле можна використовувати ідентифікаційний номер, що привласнюється громадянам податковою службою, серія і номер паспорта співробітника. Ключове поле може містити число або послідовність символів, що дозволяють ідентифікувати кожен запис і уникнути дублювання. Ключове поле використовується для швидкого пошуку і зв'язку даних з різних таблиць за допомогою запитів, форм і звітів.

Первинний ключ не може містити порожніх значень (Null ) і завжди повинен мати унікальний індекс. У будь-якій таблиці бажано мати одне або декілька ключових полів. Значення Null означає, що в полі немає жодних даних, наприклад, тому, що вони невідомі. Значення Null не можна прирівнювати до рядка, що містить пропуски.

У спеціальному полі Лічильник (AutoNumber) кожному запису привласнюється унікальний для цього поля номер, який автоматично збільшується з кожним новим записом (див. нижче розділ «Створення або зміна ключового поля»). Його можна використовувати для нумерації записів по порядку.

Складений ключ (composite primary key) є комбінацією з декількох полів. Він використовується в тих випадках, коли неможливо гарантувати унікальність запису за допомогою одного поля. Найчастіше така ситуація виникає для таблиці, використовуваної для скріплення двох таблиць у відношенні «багато до багатьом» (див. нижче розділ «Зв'язку між таблицями в базі даних»).

Дані ключового поля використовуються для індексування таблиці, що прискорює пошук і обробку інформації. Якщо не задано сортування таблиці, то записи розташовуються за значенням ключа. При включенні нових записів або видаленні старих запису таблиці не переміщаються, змінюється лише місце розташування кожного індексу. Первинний ключ використовується для пов'язання однієї таблиці з іншою.

Якщо поставити перемикач в положення Користувач визначає ключ самостійно (No, I'll set а primary key) (мал. 23.13)то в наступному вікні в списку, що розкривається Виберіть поле з унікальними для кожного запису даними (What field -will hold data that is unique for each record?) вкажіть ключове поле (мал. 23.14). Положення перемикача в цьому вікні визначає, які дані використовуватимуться в ключовому полі:

Последовательные числа, що автоматично привласнюються кожному новому запису (Consecutive number Microsoft Access assigns automatically to new record) — Access вводить числа, що зростають з кожним записом, автоматично.

Числа, що вводяться користувачем при додаванні нових записів (Numbers I enter when I add new records) — користувач вводить для кожного запису лише числові значення.

Поєднання чисел і букв, що вводиться користувачем при додаванні нових записів (Numbers and/or letters I enter when I add new records) — користувач вводить для кожного запису як числові, так і символьні значення.

Режими створення таблиць

Для створення таблиць в MS Access передбачено кілька режимів, які обираються зі списку діалогу Нова таблиця:

• Режим таблиці — застосовується для заповнення і редагування полів таблиці.

• Конструктор — режим для задання структури таблиці, тобто імен полів і типів даних.

• Майстер таблиць — створення таблиці за допомогою програми майстра.

• Імпорт таблиць — створення таблиці шляхом введення даних із зовнішнього файла (іншої бази даних, електронних таблиць).

• Зв'язування таблиць — встановлення зв'язку між базою даних Access і даними із зовнішнього файла; в цьому режимі зміни в зовнішніх даних переносяться до бази даних Access.Серед усіх режимів створення таблиць найчастіше використовують режим Конструктора.

Створення таблиці в режимі таблиці:

1. Вибрати пункт Режим таблиці (Режим таблицы).

2. Натиснути кнопку ОК.

3. Двічі клацнути в полі імені стовпця і ввести назву.

4. Ввести інформацію в рядки таблиці.

5. Натиснути на кнопці Зберегти (Сохранить).

6. Ввести ім‘я таблиці і натиснути ОК.

Створення таблиці в режимі конструктора:

1. Вибрати пункт Конструктор (Конструктор).

2. Натиснути кнопку ОК.

3. Ввести ім‘я поля.

4. Вибрати тип поля.

5. Визначити властивості поля.

6. Задати при потребі опис поля.

7. Повторити ті ж кроки для всіх необхідних полів.

8. Натиснути на кнопці Зберегти (Сохранить).

9. Ввести ім‘я таблиці.

Робота з майстром таблиць:

1. Вибрати пункт Майстер таблиць (Мастер таблиц).

2. Натиснути кнопку ОК.

3. У вікнах майстра створення таблиць необхідно:

• вибрати зразки таблиць і поля з них за допомогою кнопок < (переміщає виділене поле у список Поля нової таблиці (Поля новой таблицы)), << (переміщає усі поля з списку Зразки полів (Образцы полей) у список Поля нової таблиці (Поля новой таблицы)), > (знищує виділене поле з списку Поля нової таблиці (Поля новой таблицы)), >> (знищує всі поля із списку Поля нової таблиці (Поля новой таблицы));

• задати ім‘я таблиці і визначити спосіб встановлення ключа (автоматично Access чи самостійно);

• вказати дії після створення: відкрити таблицю для зміни структури, безпосереднього введення даних чи введення даних за допомогою форми.

• Переміщення між цими вікнами здійснюється за допомогою кнопок Назад (Назад), Далі (Далее). Зупинити процес створення БД можна за допомогою кнопки Відмінити (Отменить), а завершити за допомогою кнопки Готово (Готово).

4. Введення даних в таблиці

Після задання структури й імені таблиці можна безпосередньо ввести дані до неї. Для цього потрібно перейти в Режим таблиці. Цей режим установлюється подвійним клацанням мишею по піктограмі таблиці після відкриття бази даних. На екрані з'явиться вікно із зображенням рядків таблиці, в якому можна вводити до таблиці всі необхідні дані.

У процесі заповнення таблиці можна переміщатися між різними полями і рядками за допомогою клавіш управління курсором, а також клавіші Tab ( клавіші Shift+Tab забезпечують переміщення курсора у зворотньому напрямку).

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

5. Зв’язки між таблицями

Відношення "один-до-багатьох" означає, що одному запису таблиці відповідає кілька записів іншої таблиці.

У відношенні "один-до-одного" одному запису в головній таблиці відповідає один запис зв'язаної таблиці.

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

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

Це найбільш простій і зручний спосіб для тих, хто не дуже сильний в мові HTML взагалі і у вживанні таблиць зокрема.

Клацання на кнопці Table Wizard наводить до появи на екрані першого вікна майстра - Table Design (Проектування таблиці). Воно містить інтерактивне вікно перегляду і кнопки для зміни структури таблиці (мал. 4.27).

Мал. 4.27. Перше вікно майстра створення таблиці

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

аби додати або видалити рядок, необхідно клацнути на відповідній кнопці Rows (Рядки), або із знаком «+», або із знаком «-»;

аби додати або видалити стовпець, необхідно клацнути на відповідній кнопці Columns (Стовпці), або із знаком «+», або із знаком «-»;

аби змінити розмір вічка, слід встановити покажчик на се кордону, натискувати ліву кнопку миші (при цьому покажчик набуде форми подвійної стрілки, див. мал. 4.27) і перемістити кордон в потрібному напрямі;

аби об'єднати два вічка одного рядка, необхідно:

1. клацнути мишею усередині лівого вічка (вона буде виділена синім кольором);

2. клацнути на кнопці Column Span + (Об'єднати стовпці);

аби об'єднати два вічка одного стовпця, необхідно:

1. клацнути мишею усередині лівого вічка (вона буде виділена синім кольором);

2. клацнути на кнопці Row Span (Об'єднати рядки).

Зауваження

За допомогою кнопок Row Span і Column Span із знаками «-» можна розділити лише такі вічка, які раніше були отримані шляхом об'єднання сусідніх вічок.

Читачі, добре знайомі з мовою HTML, здогадалися, що кнопки, наявні в першому вікні майстра, дозволяють змінювати кількість і значення відповідних атрибутів «табличних» тегов:

кнопки Rows змінюють кількість тегов <TR>, вкладених в тег <TABLE>;

кнопки Columns змінюють кількість тегов <TD>, вкладених в кожен тег <TR>;

кнопки Column Span змінюють значення атрибуту COLSPAN тегов <TD>;

кнопки Row Span змінюють значення атрибуту ROWSPAN тегов <TD>.

Мал. 4.28. Приклад створення таблиці

Наприклад, аби отримати таблицю, приведену на мал. 4.28, потрібно виконати таку послідовність дій:

1. Перемістити кордон між рядками вниз.

2. Клацнути на кнопці Columns (буде доданий третій стовпець).

3. Виділити верхнє ліве вічко і клацнути на кнопці Column Span + (вибране вічко буде об'єднано з сусіднім вічком того ж рядка).

Після формування відповідної структури таблиці ви можете завершити роботу майстра, клацнувши на кнопці Finish (Готово). При цьому в редагований документ буде поміщений відповідний фрагмент HTML-кода.

Якщо ж ви хочете продовжити установку атрибутів таблиці, клацніть на кнопці Next (Далі).

Друге вікно майстра - Table Properties (Параметри таблиці) - містить елементи управління, які дозволяють встановити наступні атрибути тега <TABLE> (мал. 4.29):

ALIGN - дія цього атрибуту аналогічно дії однойменного атрибуту, використовуваній для створення «плаваючих» зображень: він дозволяє вирівнювати таблицю відносно лівого або правого краю сторінки, забезпечуючи ефект «обтікання» тексту довкола таблиці; значення атрибуту вибирається із списку, що розкривається Alignment (Вирівнювання);

CELLSPACING задає відстань (у пікселах) між вічками; значення встановлюється за допомогою дискретного лічильника Cell Spacing (Проміжок між вічками);

CELLPADING задає відстань (у пікселах) між рамкою вічок і їх вмістом; значення встановлюється за допомогою дискретного лічильника Cell Padding (Заповнення вічка);

WIDTH, HEIGTH визначають відповідно ширину і висоту таблиці або в пікселах, або як долю (у відсотках) від розміру вікна браузеру, що відображується на екрані монітора читача; аби вказати значення у відсотках, потрібно ввести після числа символ %;

BGCOLOR встановлює колір фону для всіх елементів таблиці (за відсутності індивідуальних установок для окремих вічок); значення кольору вибирається з палітри, що розкривається, пов'язаної з прапорцем Use Color (Використовувати колір);

BORDER управляє зовнішнім виглядом рамки, - таблиці, що відображується довкола; якщо значення атрибуту не задане, то рамка не відображується, але таблиця виводиться в тій же самій позиції, неначебто рамка була (тобто зберігається відповідний вільний простір довкола вічок); товщина рамки може бути встановлена рівною 0, в цьому випадку броузер не залишає вільного простору під рамку; значення атрибуту встановлюється за допомогою дискретного лічильника Size (Розмір); якщо задати значення більше 0, то стають доступні пов'язані з лічильником списки Frames і Rules: перший з них забезпечує розташування зовнішньої рамки, а другою визначає наявність рамок між рядками і стовпцями усередині таблиці.

Мал. 4.29. Друге вікно майстра, що дозволяє встановити атрибути тега <TABLE>

Після установки атрибутів таблиці майстер «заставляє» перейти до наступного кроку - установки параметрів окремих вічок, яка виконується в третьому вікні - Cell Properties (Параметри вічка). Проте, якщо це не входить у ваші плани, можете в цьому вікні просто клацнути на кнопці Finish.

Аби елементи вікна сталі доступні, необхідно виділити який-небудь елемент таблиці, клацнувши на ній мишею (мал. 4.30). Саме до цього вічка будуть відноситься ті значення, які ви встановите у вікні. Аби встановити атрибути для інших вічок, потрібний просто по черзі вибирати їх і редагувати або залишати колишніми значення атрибутів.

Мал. 4.30. Третє вікно майстра, що дозволяє встановити атрибути вічок

За допомогою вікна Cell Properties можуть бути задані наступні атрибути вічка:

ALIGN- спосіб горизонтального вирівнювання вмісту вічка; встановлюється за допомогою списку, що розкривається Horizontal'

VALIGN- спосіб вертикального вирівнювання вмісту вічка; встановлюється з помощью- списку, що розкривається Vertical;

WIDTH - ширина вічка в пікселах або як доля (у відсотках) від ширини таблиці, що відображується у вікні броузера; даний параметр досить вказати для одного вічка стовпця, оскільки для останніх автоматично буде встановлено те ж значення; значення атрибуту вводиться в однойменному полі;

NOWRAP - забороняє перенесення рядків усередині вічка; зазвичай текст, що не уміщається в один рядок вічка, переходить на наступний рядок; проте при використанні атрибуту NOWRAP ширина вічка збільшується на стільки, аби укладений в ній текст помістився в один рядок. Це вимагає певної обережності при використанні даного атрибуту; наявність атрибуту визначається станом прапорця No Wrappin (He переносити).

Крім того, за допомогою прапорця Header (Заголовок) може бути встановлена ознака того, що вміст даного вічка повинен відображуватися як заголовок (іншим шрифтом). Цій ознаці в коді сторінки відповідає тег <ТН>.

Власне вміст вічка вводиться в поле Content (Вміст).

HTML-код, що згенерував майстром, вставляється в текст сторінки з врахуванням синтаксичного форматування, тобто вкладені теги зміщуються відносно позиції тега верхнього рівня. Це значно покращує візуальне сприйняття коди документа.

Наши рекомендации