Лабораторна робота №2, Додавання, об’єднання, з’єднання таблиць, Створення форм і звітів
Код роботи: 1315
Вид роботи: Лабораторна робота
Предмет: Сховища даних та оперативний аналіз даних
Тема: №2, Додавання, об’єднання, з’єднання таблиць, Створення форм і звітів
Кількість сторінок: 19
Дата виконання: 2016
Мова написання: українська
Ціна: 250 грн (+ програма)
В ході даної роботи, я придбав навички з доповнення створеної Бази Даних новою таблицею, об'єднання двох таблиць і з'єднання цих таблиць з інтерфейсом Access з метою створення форм і звітів в режимі майстра.
Мета: придбати навички з доповнення створеної Бази Даних новою таблицею, об'єднання двох таблиць і з'єднання цих таблиць з інтерфейсом Access з метою створення форм і звітів в режимі майстра.
Хід роботи
1. Розглянемо більш докладно створення таблиці в режимі Конструктора.
У вікні Object Explorer вибираємо в розділі DataBases створену вами БД. Якщо ви працювали на іншому сервері, то ви в комп'ютерному класі можете підключити відповідний сервер, на якому зберігається ваша БД (як показано на рис. 1 вибрати в списку, що випадає Connect розділ DataBase Engine, потім у вікні <Browse for more>, потім в наступному вікні на вкладці Network Servers вибрати потрібний сервер БД і виконати з'єднання) або приєднати файли вашої БД, як було розглянуто в кінці попередньої роботи.
Рис. 1 - Підключення віддаленого сервера
У розділі Tables вибраної БД через контекстне меню створюємо нову таблицю. З'являється вікно нової таблиці в режимі Конструктора. У верхній частині вікна Конструктора розташована таблиця (бланк), яка повинна містити перелік всіх полів, їх типів і умова обов'язковості заповнення. Спочатку бланк у верхній частині порожній.
Для створення таблиці необхідно, як мінімум, заповнити графи Column name (Ім'я поля) і Data type (Тип даних). Графа Allow Null не є обов'язковою, галочкою можна відзначити ті поля, заповнення яких не обов'язково, якщо галочку прибрати, то в режимі введення даних в комірках відповідної колонки не повинно бути NULL.
Щоб задати тип поля, треба клацнути у відповідній клітинці у стовпці Тип даних. У випадаючому списку вибрати потрібний Тип поля.
Завдання 1. Заповнимо структуру нової таблиці іменами полів з їх типами з картки.
Завдання 2. Створимо первинний ключ, виділивши рядок, зазначений в картці, потім викликавши контекстне меню, виберемо Set Primary Key. Якщо ключ поставили помилково на інше поле, то знову викликати контекстне меню поля і зняти установку Set Primary Key. Закриємо вікно Конструктора. Задати ім'я таблиці, вказане в картці.
Завдання 3. Відкриємо знову створену таблицю в режимі перегляду даних.
Завдання 4. Заповнимо записи таблиці, що відкрилася. Так як в новій таблиці є стовпець, який повторює відповідний стовпчик таблиці, створеній на минулому занятті, скопіюємо дані цього стовпця в нову створювану таблицю через буфер обміну. Для цього:
- у вашій БД в розділі Tables виділити таблицю, створену на минулому занятті, потім в її контекстному меню вибрати Open Table (Відкрити).
- виділити стовпець, зазначений у картці.
- скопіювати в буфер обміну;
- закрити таблицю, створену на минулому занятті;
- встановити курсор на ім'я стовпця таблиці, що копіюється, створеної сьогодні;
- вставити з буфера обміну в таблицю скопійовані дані.
У таблиці, створеній на поточному занятті, видалити рядки зі значеннями, що повторюються, залишити всіх по одному (наприклад, якщо в трьох рядках значення ЧП Петров, то видалити дві будь-які з трьох рядків).
Завдання 5. Змінимо структуру і дані таблиці, створеної на минулому занятті, як зазначено в картці. Зберегти таблицю.
Завдання 6. Тепер треба створити Зв'язок один-до-багатьох між полями двох таблиць, зазначених у картці.
Існують зв'язки (відносини):
- Зв'язок один-до-одного, коли кожного запису однієї таблиці відповідає єдиний запис в іншій таблиці.
- Зв'язок один-до-багатьох, коли кожен запис однієї таблиці пов'язаний з безліччю записів в іншій таблиці, зворотне не має місце.
- Зв'язок багато-до-багатьох, коли одному запису в будь-якій з таблиць може відповідати більш ніж один запис в другій таблиці. У таких випадках буде необхідна третя таблиця, яка пов'язує дві розглянуті, ключ якої складається, принаймні, з двох полів, які є полями зовнішнього ключа в двох інших таблицях.
Якщо серед зв'язуваних полів немає жодного ключового поля або поля, що має унікальний індекс, створюється невизначене відношення, лінія об'єднання буде створена, але умову забезпеченості цілісності даних при цьому не можна накласти (таким чином на схемі відносини не будуть підписані). Створювати чи змінювати зв'язки між відкритими таблицями можна, перед створенням нових зв'язків старі краще видалити.
Для визначення зв'язку між двома таблицями проробимо наступні дії:
- у вашій БД вибрати розділ Database Diagrams. В контекстному меню вибрати New diagram. У вікні Add table (Додавання таблиці) вибираємо таблицю, створену на минулому занятті, і натискаємо <Add> (Додати), потім вибираємо таблицю, створену на цьому занятті, і натискаємо <Add>.
- Закрити вікно Add table (Додавання таблиці).
- У вікні Diagram - ... треба з'єднати за допомогою миші поля, як зазначено в картці.
- Закінчивши створення зв'язку, закриємо вікно Diagram ... зі збереженням в цій БД з ім'ям за умовчанням.
Якщо при створенні зв'язку згенерована помилка, то причини можуть бути наступні:
- Тип ключового поля і поля зв'язку (посилання або Foreign Key) не співпадають;
- Жодне з пари зв'язаних полів не є Primary Key.
При роботі з діаграмою можна виконувати такі функції, як (рис. 2):
- Редагування структури таблиці (для цього на відповідній таблиці в контекстному меню вибрати пункт Table View / Standart);
- Для установки первинного ключа на відповідному полі в контекстному меню вибрати Set Primary Key;
- Для знищення первинного ключа на відповідному полі в контекстному меню вибрати Remove Primary Key.
Рис. 2 - Приклад контекстного меню таблиці Authors в діаграмі
Для створення інтерфейсу можна використовувати будь-яке середовище програмування або іншу повнофункціональну СУБД, що має в своєму складі інструменти для розробки форм, меню, звітів та інших компонент. Розглянемо можливість з'єднання БД SQL Server з інтерфейсом Access. Для цього попередньо в операційній системі необхідно зареєструвати через ODBC з'єднання з БД SQL Server.
Завдання 7. Створимо з'єднання через ODBC з БД і проект програми в Access. Для цього в операційному середовищі через ПУСК зайти в Панель управления, далі в розділі Производительность и обслуживание вибрати підрозділ Администрирование, далі вибрати посилання на утиліту Источник данных (ODBC). ODBC потрібно запускати від імені адміністратора (в комп'ютерному класі попросити інженера або лаборанта запустити ODBC з правами адміністратора).
Далі вибрати тип «системный источник данных» (System Name або System DSN), додати нове джерело даних, вибравши в списку драйверів SQL Server. У наступному вікні в якості імені джерела даних (Name) написати ім'я, вказане в картці, в поле Server вказати назву вашого сервера, під управлінням якого перебуває БД. В наступному вікні вибрати тип перевірки з'єднання (за замовчуванням на рівні операційної системи, а також можна вибрати варіант перевірки на рівні користувача SQL Server, при цьому потрібно ввести його ім'я і пароль). Перед переходом до наступного вікна виконується перевірка з'єднання з сервером від імені зазначеного користувача. Якщо з'єднання виконано успішно, то в наступному вікні зі списку вибрати вашу БД, в наступному вікні залишити все без змін. Перевірити з'єднання, натиснувши Test Data Source .... У разі успішної перевірки зберегти результат.
Тепер можна підключатися до БД через будь-який інтерфейс, розглянемо приклад роботи через MS Access.
Створимо новий проект БД в MS Access і збережемо його з назвою, зазначеною у картці. У розділі Таблиці в контекстному меню необхідно вибрати Связь с таблицами. У вікні в якості типу файлів вибрати ODBC Databases. Далі на другій вкладці Источники данных компьютера (Machine Source Name) вибрати ім'я з'єднання, яке ви створили. Далі у вікні SQL Server ODBC Driver Connect ввести користувача і пароль доступу. При успішному проходженні аутентифікації з'явиться вікно Связь с таблицами, в якому необхідно вибрати ваші дві таблиці. У випадку, якщо в одній з таблиць не заданий Primary Key, то система запропонує вказати поле таблиці, яке буде грати роль первинного ключа. Можна пропустити це вікно, але краще перевірити свої таблиці, так як ключі повинні були бути задані. Якщо все виконано правильно, то в розділі ви зможете працювати з таблицями SQL Server через Access так, як ніби вони є частиною створеної програми в Access.
Особливістю таких сполук з таблицями інших СУБД є той факт, що не успадковується інформація про зв'язки між таблицями. Тому необхідно відновити зв'язок. Для цього перейдіть в меню Сервис / Схема данных. Додайте обидві таблиці в схему і протягніть зв'язок між таблицями так, як ви робили в завданні 6.
Завдання 8. Створимо форму по таблиці в програмі Access.
Форма містить ті ж поля, що і таблиця. Форми краще використовувати для перегляду, введення і коригування даних. У форму можна вставити малюнки, діаграми і малюнки, що визначають знак фірми. Можна додавати поля з проміжними обчисленнями, виконувати обробку необхідних подій.
У вікні БД виберемо розділ [Формы], натиснемо [Создать]. З'являється вікно Новая форма. Вибрати тип створення форми [Автоформа в столбец], в якості джерела даних виберемо таблицю, зазначену в картці (зверніть увагу на те, що назва таблиці в SQL Server буде відрізнятися від назви зв'язку з таблицею в Access за рахунок приписки на початку назви імені власника), клацнувши по кнопці зі стрілкою, спрямованої вниз - так відзначається кнопка розкриття списку. Натиснути <ОК>.
Програма створить форму, в якій справа - всі поля таблиці побудовані в "стовпчик", ліворуч - написи цих полів. На екран виводиться один із записів таблиці, розташованої на окремій сторінці, що полегшує сприйняття інформації. Переглянути інші записи можна, натискаючи кнопки зі стрілками, спрямованими вліво, вправо або <PgDn> - наступний запис,
<PgUp> - попередній запис. Можна переміщатися по полям записів, використовуючи клавіші переміщення курсору, як у таблиці. Можна змінювати значення полів, як у таблиці. В цьому режимі можна таблицю доповнити новими записами, видалити непотрібні записи.
Закрити Форму зі збереженням, задавши ім'я, вказане в картці.
Завдання 9. Створимо інший варіант форми за таблицею.
У вікні БД виберемо розділ [Формы], натиснемо [Создать]. З'являється вікно Новая форма. Вибрати тип створення форми [Автоформа: - ленточная], а зі списку таблицю, зазначену в картці, натиснути <ОК>.
Форма схожа на таблицю, але дані розташовані не так компактно, як у таблиці. Кожен запис займає окремий рядок - "стрічку".
Закрити Форму зі збереженням, задавши ім'я, вказане в картці.
Завдання 10. Підготувати Звіт.
Щоб надрукувати таблицю, форму або запит, використовуються Звіти. Можна звіту надати більш привабливий вигляд у порівнянні з таблицями і формами. Крім того, у звітах можна сортувати та групувати дані, визначати підсумкові значення, створювати бланк документа в тому вигляді, в якому він затверджений по законодавству. Структури форм і звітів схожі. Основна робота користувача із звітом відбувається в режимі
Конструктора, в режимі створення звіту. Коли звіт створений, його, як правило, виводять на друк. Через брак принтерів в комп'ютерних класах структуру звітів можна подивитися тільки на екрані в режимі попереднього перегляду. Можна створювати звіти подібно формам і для перегляду даних, але формати звітів відповідають стандартним форматам паперу. Найпростіший спосіб створити звіт - доручити програмі будувати автозвіти двох типів: у стовпець і стрічкові.
Для цього в розділі [Отчеты] натиснути кнопку [Создать], виберіть [Автоотчет: у стовпець] і вибрати ім'я таблиці, вказане в картці, натиснувши на кнопку розкриття списку, <ОК>. Отриманий звіт не самий зручний спосіб перегляду даних на екрані, так як всі поля можуть не вміститися на одному аркуші.
В стрічковому звіті дані розташовуються за горизонталлю, але роздрукувати такий звіт складно, треба його доопрацьовувати в режимі Конструктора звітів.
Зберегти всі зміни.
Увага! Для того щоб перенести роботу додому або з дому в комп'ютерний клас і успішно запустити необхідно:
Для перенесення на іншу машину:
1. Скопіювати створений додаток Access.
2. Скопіювати файли БД з SQL Server так, як показано в кінці минулої роботи.
Для запуску скопійованого програми на іншій машині:
1. Приєднати БД до іншого SQL Server, як показано в минулій роботі.
2. Скопіювати додаток Access.
3. Створити ODBC з'єднання, як показано в завданні 7.
4. Відкрити додаток Access, видалити в розділі Таблицы зв'язок з таблицями і створити ці зв'язки заново, як показано в завданні 7.
Картка до лабораторної роботи Варіант 1
Завдання 1.
Ім’я поля |
Тип поля |
В Column Properties (вікно властивостей) змінити значення властивості Length (Розмір |
Код виробника |
UniqueIdentifie |
|
Виробник |
Char |
40 |
Керівник фірми |
Char |
50 |
Адрес фірми-виробника |
Char |
50 |
Дата створення фірми |
Datetime |
|
Телефон фірми |
Bigint |
|
Завдання 2. Ім’я поля, по якому створюємо ключ Код виробника
Ім’я таблиці – Довідник виробника.
Завдання 4. Скопіювати дані із стовпчика Виробник таблиці Товари у стовпчик Виробник таблиці Довідник виробника.
Рядки зі значеннями, які повторюються в таблиці Довідник виробника знищити.
Завдання 5. Відкриємо таблицю Товари, створену на попередній парі, в режимі конструктора. Змінимо назву поля Виробник на Код виробника. Збережемо зміни і відкриємо таблицю в режимі перегляду даних. По черзі в кожному записі замінимо назву виробника на відповідні їм коди зі стовпця Код виробника таблиці Довідник виробника. Таким чином, ми робимо посилання на ключ в таблиці Товари. Збережемо зміни, перейдемо в режим Конструктора для таблиці Товари, у полі Код виробника замінимо тип поля на числовий.
Завдання 6. Від поля Код виробника таблиці Довідник виробника протягнути зв’язок до поля Код виробника таблиці Товари.
Завдання 7. Ім’я створюваного з’єднання ODBC_ Storage
Ім’я проекту додатку Access DB_Storage
Завдання 8. Таблиця Довідник виробника.
Назва форми Форма Довідник у стовпчик.
Завдання 9. Таблиця Довідник виробника.
Назва форми Форма Довідник стрічка. Завдання 10. Таблиця Довідник виробника.