Проектування бази даних

Предыдущая28293031323334353637383940414243Следующая

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

Пропонуємо майбутнім користувачам систем управління базами даних два підходи, два варіанти проектування баз даних. Перший варіант широко відомий, бо він запропонований фірмою Microsoft. Другий варіант відображає практичний досвід проектування, і за основу взято варіант, надрукований у «Compu­terWorld — Moscow» за 1996 рік.

Варіант 1. Етапи проектування бази даних

Нижче наведені основні етапи проектування бази даних:

1. Визначення мети створення бази даних.

2. Визначення таблиць, що їх повинна містити база даних.

3. Визначення необхідних у таблиці полів.

4. Завдання індивідуального значення кожному полю.

5. Визначення зв’язків між таблицями.

6. Відновлення структури бази даних.

7. Додавання даних і створення запитів, форм, звітів та інших об’єктів бази даних.

8. Використання засобів аналізу в СУБД.

Розглянемо ці етапи дещо детальніше.

1. Визначення мети створення бази даних. На першому етапі проектування бази даних необхідно визначити мету створення бази даних, основні її функції та інформацію, яку вона повинна містити. Тобто потрібно визначити основні теми таблиць бази даних та інформацію, що міститимуть поля таблиць.

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

2. Визначення таблиць, які повинні містити база даних. Одним із найскладніших етапів у процесі проектування бази даних є розробка таблиць, тому що результати, які повинна видавати база даних (звіти, вихідні форми тощо), не завжди дають повне уявлення про структуру таблиці. У разі проектування таблиць зовсім не обов’язково використовувати СУБД. Спочатку краще розробити структуру на папері. Отже, у разі проектування таблиць слід керуватися такими основними принципами:

— інформація в таблиці не повинна дублюватися. Не повинно бути повторень і між таблицями. Коли певна інформація зберігається лише в одній таблиці, то і змінювати її доведеться лише в одному місці. Це робить роботу ефективнішою, а також виключає можливість розбіжності інформації в різних таблицях. Наприклад, в одній таблиці мають міститися адреси й телефони клієнтів;



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

3. Визначення необхідних у таблиці полів. Кожна таблиця містить інформацію на окрему тему, а кожне поле в таблиці містить окремі дані по темі таблиці. Наприклад, у таблиці з даними про клієнта можуть бути поля з назвою компанії, адресою, містом, країною і номером телефону. Під час розробки полів для кожної таблиці необхідно пам’ятати:

— кожне поле має бути пов’язане з темою таблиці;

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

— у таблиці має бути вся необхідна інформація;

— інформацію варто розбивати на найменші логічні одиниці (наприклад, поля «Ім’я» і «Прізвище», а не загальне поле «Ім’я»).

4. Задання індивідуального значення кожному полю. З тим, щоб СУБД могла зв’язати дані з різних таблиць, наприклад дані про клієнта і його замовлення, кожна таблиця повинна містити поле чи набір полів, що задаватимуть індивідуальне значення кожного запису в таблиці. Таке поле чи набір полів називають основним ключем.

5. Визначення зв’язків між таблицями. Після розподілу даних по таблицях і визначення ключових полів необхідно вибрати схему для зв’язку даних у різних таблицях. Для цього потрібно визначити зв’язки між таблицями. Бажано вивчати зв’язки між таблицями в уже існуючій базі даних. Для перегляду зв’язків у вибраній базі даних відкриваємо її і вибираємо відповідні команди.

6. Відновлення структури бази даних.

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

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

8. Використання засобів аналізу в СУБД.Наприклад, у СУБД Microsoft Access є два інструменти для вдосконалення структури баз даних. Майстер аналізу таблиць досліджує таблицю, в разі потреби пропонує нову її структуру та зв’язки, а також переробляє її. Аналізатор швидкодії досліджує всю базу даних, дає рекомендації з її поліпшення, а також реалізує їх.

Варіант 2. Розробка проекту бази даних

1.Розробка логічної моделі даних. Логічні моделі використовуються розробниками баз даних для формального представлення інформаційних потреб виробництва, економіки, бізнесу тощо. Найрозповсюдженішою формою відображення цієї мо­делі слугують ER-діаграми[5]. Основними поняттями ER-моделі є сутність, зв’язок та атрибут. Кожна з частин такої діаграми повідомляє дещо про структуру даних або про те, як ці дані співвідносяться з іншими.

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

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

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

3. Перетворення логічної моделі у фізичну. У процесі розробки фізичної моделі сутності, атрибути та зв’язки складають фізичну модель, відображаються у таблиці та стовпчиках. До раніш заданих властивостей стовпчиків (типів даних, протяжностей і невизначених значень) додаються нові — первинні та зовнішні ключі, індекси, перевірочні обмеження та правила підтримки посилкової цілісності. Щоб правильно і добре виконати цей етап проектування, засоби моделювання даних повинні працювати з кількома популярними СУБД SQL-типу, графічно відображати фізичні характеристики, дозволяти призначати та модифікувати триггери[6] за замовчування, створювати власні триггери, денормалізувати фізичну модель, не торкаючись при цьому логічної.

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

5. Генерація схеми бази даних. Схема описує реалізацію бази даних з урахуванням специфіки конкретної СУБД. Схема може створюватися або мовою визначення даних (файли DDL), або при прямому зверненні до СУБД. Програмні продукти, які добре підтримують генерацію схеми, дають засоби контролю за генеруючими елементами схеми, що дає змогу зробити цей процес ітеративним. Варто шукати інструменти, які підключаються до нашої цільової СУБД і дають можливість переключатися між різними СУБД, мінімізуючи при цьому ручне редагування.

6. Супроводження розроблюваної моделі даних. Більшість баз даних протягом свого життєвого циклу еволюціонує. Для того, щоб спростити цей процес, рекомендується синхронно змінювати модель та базу даних. Варто звертати увагу на засоби синхронізації, утиліти керування версіями та захисту. За допомогою найзручніших у роботі інструментів можна переносити зміни в обидва боки: з моделі в схему, і навпаки. Якщо раніше замовник після здачі СУБД в експлуатацію відмовлявся від супроводження, то тепер, як правило, проектувальники супроводжують експлуатацію СУБД. Це накладає на них додаткову відповідальність за якість проектування, бо всі негаразди доводиться ліквідовувати їм самим.

7. Звернене проектування, що виходить з існуючої бази даних. Відтворення схеми існуючої бази даних служить кільком цілям. Воно дає змогу побудувати модель цієї бази даних, перенести існуючу базу даних з однієї СУБД на іншу, а також досить просто модифікувати схему бази даних, що функціонує. Ключовими параметрами для виконання такого завдання є точність та гнучкість. Ми повинні мати можливість задати елементи схеми, з якими працюватиме програма, й очікується, що внаслідок генерації схеми бази даних за відновленою моделлю має з’явитися тотожна копія початкової схеми.

Як бачимо, другий варіант окреслює загальніший підхід до проектування баз даних та враховує відносини з замовником проекту. Розглянемо етапи проектування бази даних на основі засобів СУБД MS Access 97, але перед цим дамо характеристики цій реляційній СУБД.

9.1.3. Microsoft Access як реляційна СУБД

Microsoft Access — це функціонально повна реляційна СУБД.У ній передбачені всі необхідні засоби для визначення та обробки даних, а також для керування ними при роботі з великими обсягами інформації.

9.1.3.1. Визначення даних і їх збереження

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

Ця гнучкість забезпечує успішний розв’язок невеликих, добре сформульованих задач. Але коли електронна таблиця містить кілька сотень рядків, а документи складаються з багатьох сторінок, то працювати з ними стає досить важко. З ростом обсягу даних можна виявити, що перевищені встановлені електронною таблицею або текстовим редактором обмеження на пам’ять або ж узагалі вичерпані можливості комп’ютерної системи. Якщо розробляється документ або електронна таблиця, які призначені для інших користувачів, то стає важко проконтролювати введення нових і використання вже наявних даних. Наприклад, коли в електронній таблиці в одній комірці має зберігатися дата, а в іншій — грошове надходження, користувач зовсім випадково може їх переплутати.

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

СУБД дозволяє задавати типи даних і засоби їх збереження. Можна також задати критерії (умови), які СУБД надалі використовуватиме для забезпечення правильного введення даних. У найпростішому випадку умова на значення (validation rule) повинна гарантувати, що не буде введено випадково в числове поле текст. Інші умови можуть визначати ділянку чи діапазони припустимих значень даних. У найдосконаліших системах можна задати відношення між сукупностями даних, які називаються таблицями або файлами, і покласти на СУБД забезпечення сумісності чи цілісності даних. Наприклад, можна змусити систему автоматично перевіряти відношення введених замовлень до конкретних клієнтів.

Microsoft Access надає максимальну свободу в завданні типу даних (текст, числові дані, дати, час, грошові значення, малюнки, звук, документи, електронні таблиці). Можна задати також формати збереження (довжина рядка, точність подання чисел і дати/часу) і подання цих даних у разі виведення на екран або друк. Для впевненості, що в базі даних зберігаються лише коректні значення, можна задати умови на значення різноманітного ступеня складності.

Оскільки Microsoft Access є сучасним додатком Windows, можна використовувати всі можливості DDE (Dynamic Data Exhange, динамічний обмін даними) та OLE (Object Linking and Embedding, зв’язок та впровадження об’єктів). DDE дає змогу здійснювати обмін даними між Access і будь-яким іншим додатком Windows, який підтримує DDE. В Access можна за допомогою макросів або Access Basic здійснювати динамічний обмін даними з іншими додатками. OLE є витонченішим засобом Windows, що дає можливість встановлювати зв’язок з об’єктами іншого додатка чи впроваджувати якісь об’єкти в базу даних Access. Такими об’єктами можуть бути картинки, діаграми, електронні таблиці чи документи з інших додатків Windows, що підтримують OLE.

Microsoft Access може працювати з великим числом найрізноманітніших форматів даних, включаючи файлові структури інших СУБД. Можна здійснювати імпорт і експорт даних із файлів текстових редакторів або електронних таблиць. За допомогою Access можна безпосередньо обробляти файли Paradox, dBASE III, dBASE IV, FoxPro та ін. Можна також імпортувати дані з цих файлів у таблицю Ассеss. На додаток до цього Microsoft Access може працювати з найпопулярнішими базами даних, які підтримують стандарт ODBC (Open Database Connectivity — Відкритий доступ до даних).

Обробка даних

Робота з даними в текстовому редакторі або електронній таблиці значно відрізняється від роботи з даними в СУБД.
У документ, підготовлений за допомогою текстового процесора, можна включати табличні дані та використовувати для їх обробки обмежений набір функцій. Можна виконувати пошук рядка символів у вихідному документі, за допомогою OLE включати в нього таблиці, діаграми чи картинки з інших додатків. В електронній таблиці деякі комірки містять формули, які забезпечують потрібні обчислення або перетворення, а дані, що є для них вхідною інформацією, можна вводити в інші комірки. Дані з електронної таблиці, створеної з якоюсь конкретною метою, дуже важко потім використовувати для виконання інших завдань. Щоб розв’язати нову задачу, потрібно організувати зв’язок із даними іншої електронної таблиці чи використати обмежені можливості пошуку для копіювання обраної підмножини. СУБД дає змогу працювати з даними, застосовуючи різноманітні засоби. Наприклад, можна виконати пошук інформації в окремій таблиці або створити запит зі складним пошуком по кількох пов’язаних між собою таблицяхабо файлах. За допомогою однієї єдиної команди можна оновити зміст окремого поля чи кількох записів. Для читання та коригування даних можна створити процедури, що використовують функції СУБД. У багатьох системах є розвинуті можливості для введення даних і генерації звітів.

У Microsoft Access для обробки даних таблиць використовується потужна мова SQL (Structured Query Language — структурована мова запитів). Використовуючи SQL, можна виділити з однієї чи кількох таблиць потрібну для розв’язання конкретної задачі інформацію. Access значно спрощує процес обробки даних. Щоб змусити Microsoft Access виконувати наші завдання, не обов’язково потрібно знати мову SQL.

У Microsoft Access є простий і в той же час багатий на можливості засіб графічної постановки запиту — так званий «запит за зразком» (QBE, query by example), який використовується для задання даних, необхідних для розв’язання певної задачі. Використовуючи для виділення та переміщення елементів на екрані стандартні прийоми роботи з мишею в Windows і кілька клавіш на клавіатурі, можна побудувати досить складний запит.

Електронні таблиці і текстові документи є прекрасними засобами для розв’язування «однокористувальницьких» задач, але вони погано пристосовані для роботи в режимі колективного користування. Електронні таблиці також корисні як шаблони для простих форм введення інформації. Електронна таблиця добра як шаблон для рахунка-фактури в невеликій фірмі. Але якщо з розширенням бізнесу починає зростати число співробітників, що вводять у комп’ютер замовлення, то без бази даних не обійтися. Так само електронна таблиця може використовуватися на великих підприємствах для підготовки співробітниками звітів про свої витрати, але для впорядкування загальної бухгалтерської звітності ці відомості однаково повинні збиратися в базі даних.

У тих випадках, коли виникає потреба в колективному користуванні інформацією, система управління базами даних дає змогу захищати інформацію від несанкціонованого доступу так, що право знайомитися з даними чи коригувати їх одержують лише певні користувачі. Призначена для колективного користування СУБД має засоби, які не дозволяють кільком користувачам одночасно коригувати ті самі дані. Найдосконаліші системи дають змогу, крім того, так групувати внесені зміни (послідовності таких змін іноді називають транзакціями), що або жодне з них не буде збережено, або будуть збережені всі зміни. Наприклад, вводячи нове замовлення, потрібно спочатку переконатися в тому, що всі його пункти внесені правильно, а якщо трапилася помилка, то простежити, щоб це замовлення (зміни в базі даних) не записувалося в пам’ять. Окрім того, виникає бажання, щоб ніхто інший не бачив цього замовлення чи його частини доти, доки воно цілком не буде введене в базу даних.

Microsoft Access спроектований так, що він може бути використаний як у ролі самостійної СУБД на окремій робочій станції, так і в мережі — у режимі «клієнт — сервер». Оскільки в Access до даних можуть мати доступ відразу кілька користувачів,у ньому передбачені надійні засоби захисту та забезпечення цілісності даних. Можна заздалегідь визначити, які користувачіабо групи користувачів матимуть доступ до об’єктів (таблиць, форм, запитів) бази даних. Access також розпізнає та враховує захисні засоби інших, приєднаних до бази даних структур.

Microsoft Access, володіючи всіма рисами класичної СУБД, дає й додаткові можливості. Access — це не лише потужна, гнучка та проста у використанні СУБД, а й система для розробки додатків, що працюють із базами даних. Використовуючи запити, можна вибирати і обробляти інформацію, що зберігається в таблицях. Можна створювати форми для введення, перегляду та відновлення даних, а також використовувати Access для складання як простих, так і складних звітів. До числа найпотужніших засобів Access відносяться засоби розробки об’єктів — Майстри, що їх можна використовувати для створення таблиць, запитів, різноманітних типів форм і звітів.

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

9.1.4. Архітектура Microsoft Access

У Microsoft Access об’єктами називається усе, що може мати ім’я (у розумінні Access). У базі даних Access ocновними об’єктами є таблиці, запити, форми, звіти, макроси та модулі.

Таблиця — це об’єкт, який визначається і використовується для збереження даних. Кожна таблиця включає інформацію про об’єкт певного типу, наприклад про клієнтів. Таблиця містить поля (стовпчики),у яких зберігаються різноманітні дані, наприклад прізвище чи адреса клієнта, і записи (які називаються такожрядками). У записах зібрана вся інформація про конкретний предмет (людину, зразок продукції). Для кожної таб-
лиці можна визначити первинний ключ (одне чи кілька полів, що мають унікальне значення для кожного запису) та один
або кількаіндексів з метою збільшення швидкості доступу до даного.

Запит — це об’єкт, який дає змогу користувачеві одержувати потрібні дані з однієї чи кількох таблиць. Для створення запиту можна використовувати QBE (запит за зразком) або інструкції SQL. Можна створювати запити на вибір, відновлення, вилучення чи додавання даних. За допомогою запитів можна створювати нові таблиці, використовуючи дані однієї чи кількох таблиць, що вже існують.

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

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

Макрос є об’єктом, що являє собою структурований опис однієї чи кількох дій, які повинен виконати Access у відповідь на певну подію. Наприклад, можна визначити макрос, який у відповідь на вибір якогось елемента в основній формі відкриває іншу форму. За допомогою іншого макроса можна здійснювати перевірку значення певного поля при зміні його змісту. У макрос можна включати додаткові умови для виконання або невиконання тих чи інших включених у нього дій. Можна також, перебуваючи в одному макросі, запустити інший макрос або функ­цію модуля.

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

9.1.5. Таблиці і поля

Основний структурний елемент Access — таблиця, в якій зберігається інформація. Об’єкт «таблиця» — це лише одна частина Access-системи, в якій справді зберігається інформація. Всі інші об’єкти (такі, як запити, форми та звіти) ґрунтуються на даних таблиць.

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

По-перше, за рахуноккласифікації по стовпчиках. Кожен стовпчик таблиці являє собою результат певної класифікації.

По-друге, тому, щорядки повторюють шаблон. Шаблон, установлений за допомогою стовпчиків, повторюється в кожному
рядку. Кожний рядок подає інформацію про певний існуючий об’єкт, наприклад, про легковий автомобіль, заводи-виготовлю­вачі або роки випуску.

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

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

9.1.5.1. Стовпчики і рядки, поля та записи

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

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

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

Запис містить інформаціюпро окрему особу,місце чи предмет.

Терміни рядок, стовпчик, поле та запис використовуються в різних частинах системи Access.

9.1.5.2. Робота з вікном бази даних

Перш ніж перейти до створення таблиць, потрібно створити базу даних, у якій зберігатимуться таблиця та інші об’єкти Access. Із запуском Access з’являється діалогове вікно (рис. 9.1).

Рис. 9.1

Можна відкрити вже існуючу базу даних, створити нову базу даних або запустити Мастерадля створення нової бази даних за зразком. Після відкриття наявної бази даних з’явиться вікно з такими вкладками: Таблицы, Запросы, Формы, Отчеты, Мак-
росы,Модули. На кожній вкладці є кнопки: Запуск, Конструктор, Создать.Натиснувши на одну з цих кнопок, починаємо певну роботу з базою даних. Роботу можна також почати, натиснувши на об’єкті правою кнопкою миші. З’являється відповідне контекстне меню, в якому вибираємо відповідний пункт і починаємо роботу.

9.1.5.3. Створення нової таблиці

Кожна база даних може містити одну чи більше таблиць інформації. Нові таблиці створюються натисканням кноп-
ки Создатьу вікні бази даних, якщо обраний корінець Таблицы. У результаті цього відкривається вікно Новая таблица, показане на рис. 9.2.

Рис. 9.2

У правій частині вікна наведено п’ять пунктів, які дають можливість вибрати спосіб задання таблиці Режим таблицы, Конструктор, Мастер таблиц, Импорт таблиціСвязь с таблицами. Вибираємо пункт Конструктор і натискуємо ОК.

Вікно конструктора таблиці має три стовпчики: Имя поля, Тип данныхіОписание(рис. 9.3).

Рис. 9.3

Имя поля — це ім’я, що присвоюється даному полю. Кожне поле в одній таблиці мусить мати унікальне ім’я, а також може мати протяжність не більше 64 символів і містити літери, цифри, проміжки та знаки пунктуації. Бажано у разі надання імен полям дотримуватися таких правил. Імена повинні бути набрані латинськими літерами і завдовжки не більше 8 символів, тобто слід намагатися дотримуватися правил іменування об’єктів у MS DOS. Після введення імені поля натискуємо на клавішу , щоб перевести курсор у стовпчик Тип данных. За замовчування дане вважається текстовим, завдовжки 50 символів. Щоб змінити тип даних, натискуємо на кнопку розкриття списку та вибираємо потрібний тип. У Access є дев’ять типів даних і майстер підстановок: Текстовый, Поле MEMO, Числовой, Дата/время, Денежный, Счетчик, Логический, Поле объекта OLE, Поле типа Гиперссылка, Мастер подстановок. Вибравши потрібний тип поля, знову натискуємо клавішу Tab, і курсор переходить у поле Описание. Описание — це записаний нами коментар, у якому мовиться про призначення даного поля. Ці нотатки заносити не обов’язково, але якщо проект виконується для замовника, то опис повинен бути зроблений, щоб не мати клопотів під час здавання проекту.

Говорячи про імена полів, слід зупинитися на одному моменті. Як уже зазначалося вище, бажано давати імена полям за правилами DOS. Але коли проект досить великий і даних багато та ще виникає бажання давати імена більш інформативні, то варто скористатися одним прийомом. Ім’я може складатися з кількох слів, початкові літери цих слів великі, пробіли між словами відсутні. Наприклад: ПосівнаПлоща, ТабНомер, ПосадОклад, ПреміяКвартальна, ПреміяЗаВислугу і т. ін. Access дає можливість використовувати пробіли в іменах полів, тому можна вводити фрази, подібні таким: «Премія за вислугу», але важко розібратися, скільки прогалин між словами у чужих імен полів. Користувачі, які працюватимуть з нашими додатками, теж не зможуть відразу розібратися з іменем поля[7].

9.1.5.4. Типи полів

Поле може належати до одного з десяти типів, описаних нижче.

Текстовый (Text)—використовується для збереження будь-якої послідовності символів, включаючи літери, цифри, знаки пунктуації, прогалини та спеціальні символи. Текстові поля можуть бути завдовжки до 255 символів. За замовчування довжина текстового поля дорівнює 50 символам. Найчастіше цей тип використовується в полях, призначенихдля збереження коротких текстових характеристик, наприклад, імен або адрес.

MEМO (Memo)—поля цього типу використовуються для збереження довгих текстових блоків до 65 000 символів (близько 16 сторінок інформації). Потрібно використовувати цей тип поля тоді, коли треба ввести чи імпортувати великий текстовий блок. Це поле змінної величини, і задавати розмір його не потрібно.

Числовой (Number)—використовується для збереження числових значень (крім грошових сум). У числових полях, як правило, містяться значення, над якими виконуватимуться обчислення; числа можуть містити десяткові коми та знак «мінус». Якщо число є іменем якогось об’єкта (поштовий індекс, шифр виробу), то потрібно задавати тип поля як Текстовый.

Дата/Время (Date/Time)—використовується для зберігання дати/часу, значення вводяться в поля такого типу в стандартному форматі, наприклад 1/1/99/, 12:53:00 РМ.

Денежный (Currence)—використовується для збереження числових значень. Автоматично додає фіксовану кількість цифр після десяткової коми, щоб уникнути помилок округлення.

Счетчик (AutoNumber)—автоматично присвоює унікальне числове значення для кожного запису, починаючи з 1 для першого запису, 2 для другого і т. д. Якщо запису присвоєно таке значення, то воно далі не буде змінюватися чи використовуватися знову в тій самій таблиці. Ми не зможемо змінити значення поля такого типу.

Логический (Yes/No)—цей тип поля використовується для збереження логічних величин, які можуть набувати лише двох значень типу «так» чи «ні».

OLE Object—цей тип поля містить дані з інших додатків, які підтримують технологію Object Linking and Embedding (OLE) — зв’язок та впровадження об’єктів. Цей тип поля дає змогу зберегти документи, таблиці, графіки, малюнки, звукові сигнали, відео- та іншу інформацію, створену додатками Windows, що підтримують технологію OLE.

Гиперссылка (Hiperlink)—поле цього типу містить адресу гіперпосилання, яка вказує шлях до іншого об’єкта, документа чи Web-сторінки. Наприклад, якщо таблиця створюється для відстежування документів, створених у Microsoft Word, варто ввімкнути поле гіперпосилання, натиснувши на яке зможемо побачити зміст цих документів.

Мастер подстановок (Lookup Wizard)—поле цього типу використовується для задання списку значень, які може приймати дане поле.

9.1.5.5. Використання засобу «Описание»

Після вибору потрібного типу поля натискуємо клавішу Tab і переміщуємося у стовпчик «Описание». Сюди можна за потреби занести довідкову інформацію. Після введення опису чи в разі пропуску натискуємо клавішу Tab. Вказівник зміститься на наступний рядок. За потреби продовжуємо вводити імена полів, типи даних та опис для решти полів.

9.1.5.6. Властивості поля

На додачу до трьох основних елементів (Тип поля, Тип данных, Описание) поле може містити також і набір властивостей. Властивість — це така характеристика об’єкта, як розмір, тип або ім’я. Кожен об’єкт у Access має власний набір властивостей. Access має дванадцять властивостей, що можуть бути притаманні полю. Властивості поля залежать від його типу. Наприклад, єдина властивість «Подпись поля» (Caption) притаманна всім полям. Варто також пам’ятати, що вибір властивостей істотно залежить від типу поля. Наприклад, поля типу «Текстовый» (Text) і «Числовой» (Number) мають властивість «Формат поля» (Format). Проте вона не однакова для цих двох типів полів, оскільки логічно вони обробляються по-різному.

За винятком властивостей «Размер поля» (Field Size) і «Формат» (Format), властивості діють на всі типи полів однаково.

«Размер поля» (Field Size). Розмір поля можна зазначити для полів типу «Текстовый» (Text) і «Числовой» (Number). Розмір текстового поля можна легко уявити. Просто вводимо значення, яке встановлює максимальне число символів поля не більше 255. За замовчуванням встановлюється розмір 50. Розмір поля можна не змінювати, бо на відміну від dBASE, Paradox і FoxPro, Access не використовує поля фіксованої довжини, тому на диску зберігаються лише введені в поля символи. За замовчуванням розмір числового поля встановлюється зі значенням Double (подвійної точності), і можна лишити його без зміни.

9.1.5.7. Формати полів (Format)

За винятком полів типу OLE Access no-різному здійснює введення та виведення даних. Наприклад, якщо ви в поле вводите число 71500.0, то може знадобитися вивести його у вигляді $71,500.00. Це можна реалізувати через вибір формату поля, що «змусить» виводити всі введені дані саме в такому вигляді. Форматовані дані, як правило, легше читати, особливо якщо вони числові, тому що послідовність таких символів, як коми, знаки долара та десяткові крапки, не залежить від способу введення даних. Форматування також усуває необхідність введення незначних символів — таких, як знак долара чи кома, що можна вводити автоматично, залежно від формату.

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


8237412789887490.html
8237449494879713.html

8237412789887490.html
8237449494879713.html
    PR.RU™