Створення та обробка баз даних "Расписание"

Теорія складання та використання розкладів. Проектування бази даних "Расписание", що містить інформацію про вільні аудиторії, в Microsoft Office Access з подальшим її використанням в середовищі програмування Borland Delphi та розробка програми до неї.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык украинский
Дата добавления 05.04.2012
Размер файла 1,2 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

ЗМІСТ

РОЗДІЛ І. ТЕОРІЯ СКЛАДАННЯ РОЗКЛАДІВ

1.1 Проблеми впорядкування

1.2 Питання «ідеального» упорядкування

1.3 Математична модель

1.4 Методи розв'язку задач теорії розкладів

1.5 Типи алгоритмів складання розкладів

ВИСНОВКИ ДО І РОЗДІЛУ

РОЗДІЛ ІІ. СТВОРЕННЯ ТА ОБРОБКА БАЗ ДАНИХ

2.1 Бази даних

2.2 Архітектура програмно-апаратного комплексу

2.3 Проектування БД «Расписание» у середовищі СУБД Access

2.4 Розробка програми до бази даних «Расписание»

ВИСНОВКИ ДО ІІ РОЗДІЛУ

ВИСНОВКИ

СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ

ВСТУП

Актуальність теми.

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

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

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

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

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

Мета

Створити базу даних в середовищі програмування Borland Delphi, яка б полегшила складання та використання розкладів.

Предмет і об'єкт

Предмет даного курсового дослідження - це проектування та використання баз даних.

Об'єктом курсової роботи є створення бази даних в Microsoft Office Access та опрацювання її в Borland Delphi.

Завдання

Виходячи з мети курсового дослідження можна визначити такі завдання:

-автоматизація однієї зі сторін практичної діяльності людини з використанням баз даних;

- полегшити опрацювання розкладів за допомогою розробленої програми в Borland Delphi;

Теоретичне та практичне значення

Дана курсова робота може знадобитися як посібник-помічник при створенні баз даних в Microsoft Office Access з подальшим використанням в середовищі програмування Borland Delphi, а також при складанні розкладів.

розклад access delphi база дані

РОЗДІЛ І ТЕОРІЯ СКЛАДАННЯ РОЗКЛАДІВ

1.1 Проблеми впорядкування

Теорія розкладів (ТР) є частиною дослідження операцій. ТР досліджує задачі, у яких необхідно впорядкувати або, інакше кажучи, визначити послідовність виконання сукупності робіт, використання яких-небудь засобів і т.д.

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

Результати, до яких приводить те або інше впорядкування, суттєво відрізняються.

1.2 Питання «ідеального» упорядкування

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

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

2) однозначно визначено обладнання, яке виділяється для виконання заданих робіт.

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

Існує певна відмінність між термінами “впорядкування” і “складання розкладу”. Впорядкування - це формування послідовності операцій, виконуваних однієї машиною, у той час як складання розкладу означає завдання послідовності дій декільком машинам.

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

1.3 Математична модель

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

1) індексом приналежності до певної роботи;

2) індексом приналежності до певної машини;

3) числом, що представляють собою тривалість операції.

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

Для кожної роботи задається послідовність складових її операцій (обумовлена технологічним процесом). Таке часткове впорядкування операцій здійснюється завданням відносини порядку. Якщо операція X повинна бути здійсненна раніше, чим Y, то говорять, що X йде попереду Y. Це записується у вигляді: X<Y або Y>X. Відношення порядку транзитивно: якщо X<Y, Y<Z, то X<Z. Будемо говорити, що операція X безпосередньо йде попереду операції Y і записувати X<<Y або Y>>X, якщо X<Y і немає операції Z, такої що X <Z<Y.

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

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

- дорівнює тривалості операції ;

число - значення, що відноситься до X, не менше, чим для двох операцій X і Y які відносяться до однієї роботи й таких, що ;

кожний з інтервалів розташований цілком усередині одного з відрізків часу доступності відповідної машини.

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

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

1) Кожна машина може бути призначена в будь-який момент часу, тобто заборонені перерви в роботі машини. Кожна машина формально являє собою інтервал (0, Т), де Т є довільно велике число.

2) Роботи являють собою строго впорядковані послідовності операцій. Для заданої операції X існує не більш однієї операції Y такої, що, і однієї операції Z такий, що .

3) Кожна операція виконується тільки однієї машиною.

4) Існує тільки по одній машині кожного типу. Між номерами машин і другими індексами операцій, що вказують номер машини яка їх виконує, існує взаємно однозначна відповідність.

5) Відсутні переривання операцій. Для кожної операції заданий єдиний інтервал, причому тривалість операції рівна .

6) Інтервали виконання послідовних операцій однієї й тієї ж роботи не перетинаються. Величина, відповідно до призначення операції X, не може бути менше для будь-якої операції Y такий, що .

7) У кожний момент часу машина може виконувати не більш однієї операції.

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

1.4 Методи розв'язку задач теорії розкладів

«Тимчасовий» характер задач ТР виділяє їх в особливий клас, що суттєво відрізняється від «об'ємних» економічних задач. Якщо в останній потрібно відповісти на запитання, що й скільки робити, то в задачах ТР необхідно визначити, коли, у якій послідовності виконувати роботу. Ця відмінність у суті задач визначає відмінність у методах і можливостях їх розв'язку. Для задач об'ємного характеру розвинений досить потужний апарат, головним чином математичного програмування, що дозволяє, загалом, з успіхом домагатися їхнього розв'язку. Для задач ТР вирішальний апарат розвинений у набагато меншому ступені.

Пошук оптимального або близького до оптимального розкладу здійснюється за допомогою одного з 4 підходів:

- математичного програмування;

- комбінаторного;

- евристичного;

- статистичного (імовірнісного).

1.5 Типи алгоритмів складання розкладів

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

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

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

Зрозуміло, що з появою в ЕЦОМ зовнішніх обладнань, що виконують графічні роботи, експерименти подібного роду стали практично здійсненними.

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

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

Часто при перегляді різноманітних алгоритмів важливим виявляється поняття множини очікуваних операцій. У кожний момент часу множина очікуваних операцій, позначена через {Sso}, є підмножиною тих операцій з G, для яких попередні вже включені в розклад. Іншими словами, деяка операція входить в {Sso}, якщо вже вибрані моменти початку виконання всіх попередніх їй операцій даної роботи. Це значить, зокрема, що в початковий момент множина {Sso} у системі типу n / m складається з n операцій - перших у кожній роботі. Після вибору й включення в розклад однієї із цих операцій її місце займає друга операція тієї ж роботи (якщо вона є). Щоразу, коли остання операція якої-небудь роботи включена в розклад і її нема чим замінити в {Sso}, число елементів цієї множини зменшується на одиницю. Складання розкладу закінчується, коли множина {Sso} стає порожньою. Поняття множини операцій, що очікують, важливо при дослідженні як однократних, так і змінних алгоритмів. Причому, якщо в однократних алгоритмах операція, залишаючи {Sso}, не вертається в цю множину, то в змінних існує можливість перегляду всіх уже зроблених призначень, і операції можуть бути включені в {Sso} декілька раз.

Звичайно використовують два способи розбиття {Sso}. Перший - це розбиття {Sso} на n підмножин, які відповідають роботам; тоді кожна підмножина складається з мінімум однієї операції й стає порожньою як тільки остання операція роботи включається в розклад. Таке розбиття використовується в алгоритмі почергового включення робіт, при якому всі gi призначень моментів початку операцій однієї роботи проводяться послідовно, не чергуючись із призначеннями моментів початку операцій інших робіт. Тому що існує n! перестановок n робіт, то якщо обмежиться тільки алгоритмами, що дають компактні розклади, одержимо рівно n! однократних алгоритмів такого типу. Кожний з них приводить до єдиного компактного розкладу, однак ці розклади не обов'язково різні, зокрема, якщо деякі роботи вимагають різних комплектів машин.

Другий спосіб розбивки {Sso} полягає в тому, що в {Sso} виділяється m підмножин, що відповідають m машинам і позначуваних, k = 1, . . ., m. Кожна з підмножин складається з операцій, виконання яких повинно здійснюватися певною машиною і які можна включити в розклад у цей момент часу. Інакше кажучи, підмножина складається з операцій, що очікують виконання на машині k і таких, що попередні операції вже включені в розклад і «виконуються» іншими машинами. Спочатку є n операцій розбитих на m підмножин , k = 1, . . ., m. У процесі складання розкладу деякі підмножини можуть ставати то порожніми, то непустими й поповнюватися доти, поки всі підмножини не виявляться порожніми й складання розкладу буде завершено.

Найбільший інтерес представляють два методи включення операцій у підмножину , з якого потім вибирається операція для включення в розклад. Кожний з методів приводить до певного класу диспетчеризацій. Розглянемо множину «виконуваних» («in-process») операцій і позначимо його {Sip}. Операція попадає в цю множину відразу, як тільки залишає {Sso}. Множина {Sip} розбивається на m підмножин, позначуваних, k = 1, . . ., m, відповідно до числа машин, і в кожний момент часу існує в точності по одній операції в кожному з таких підмножин (операції, виконувані в цей момент кожною машиною). При включенні чергової операції в одну із множин попередня операція залишає цю підмножину.

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

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

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

Загальним методом задання пріоритетів є одержання їх за допомогою деякого імовірнісного правила з використанням різних розподілів для різних наборів операцій і робіт. При такому підході особливе значення набуває ідея багаторазового складання розкладу для однієї й тієї ж задачі. Це пов'язано з тим, що випадковість при обчисленні пріоритетів щоразу буде приводити до іншого розкладу. Зміст повторного складання розкладів у тому, що, по-перше, використовуючи стохастичне правило призначення пріоритетів і одержуючи вибіркову множину розкладів для однієї й тієї ж задачі, можна робити статистичні висновки відносно правила призначення пріоритетів і самих розкладів для цієї системи(I варіант), а по-друге, у тому, що, варіюючи множину робіт, можна одержувати статистичні висновки щодо розкладів для певного класу систем (II варіант).

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

Будь-яка диспетчеризація передбачає необхідність якого-небудь пріоритетного правила для призначення чергової операції, яка виконується деякою машиною. Іноді пріоритети задаються неявно в обчислювальній програмі, але вони завжди існують. Вибір операції фактично відбувається у два етапи. Спочатку вибирається машина, скажемо K, а потім із множини, що складається з декількох операцій, вибирається операція для чергового включення в розклад. Після того як обрали машину, можна, хоча й зовсім необов'язково, вибирати операцію, за правилом «першим прийшов - першим обслужений» (обслуговування в порядку вступу). У найбільш загальному випадку пріоритети можна задавати за допомогою стохастичного правила, використовуючи той чи інший розподіл, зокрема, зосереджене в одній точці (наприклад, вибір у порядку вступу), або вибираючи з однаковими ймовірностями кожну з можливих операцій. У випадку виродженого розподілу виходить єдиний розклад, і повторне складання по варіанту I безглуздо. Таким чином, у найбільш загальному випадку диспетчеризація є алгоритмом з ймовірнісним правилом розподілу пріоритетів; лише в окремих випадках ймовірності або пріоритети не включаються в алгоритм явно. Тому термін диспетчеризація означає певний тип алгоритму складання розкладу, заснований на деяких стохастичних правилах призначення пріоритетів.

Трохи інший підхід до розглянутих питань розглянутий Джереміа, Лалчалдані й Шрейджем. Тут вибір операції із множини неупорядкованих проводиться не рівноймовірно, а на підставі деяких характеристик операцій (або робіт). При цьому момент початку виконання обраної операції призначається так, щоб вийшов компактний розклад.

ВИСНОВКИ ДО І РОЗДІЛУ

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

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

Пошук оптимального або близького до оптимального розкладу здійснюється за допомогою одного з 4 підходів:

- математичного програмування;

- комбінаторного;

- евристичного;

- статистичного (імовірнісного).

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

РОЗДІЛ ІІ. СТВОРЕННЯ ТА ОБРОБКА БАЗ ДАНИХ

2.1 Бази даних

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

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

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

Але іноді в БД дуже великий обсяг інформації, і з нею не дуже зручно працювати. Для редагування та перегляду інформації таких БД використовують різні програми, які можна створити самому використовуючи мови програмування такі як Borland Delphi, С++ та інші.

Компілятор, вбудований в Delphi, забезпечує високу продуктивність, необхідну для побудови додатків в архітектурі “клієнт-сервер”. Він пропонує легкість розробки і швидкий час перевірки готового програмного блоку і в той же час забезпечує якість коду.

В процесі побудови додатків розробник вибирає з палітри компонент готові компоненти як художник, що робить крупні мазки кистю. Ще до компіляції він бачить результати своєї роботи - після підключення до джерела даних їх можна бачити відображеними на формі, можна переміщатися за даними, представляти їх в тому або іншому вигляді. У цьому сенсі проектування в Delphi мало чим відрізняється від проектування в інтерпретуючому середовищі, проте після виконання компіляції ми одержуємо код, який виконується в 10-20 разів швидше, ніж те ж саме, зроблене за допомогою інтерпретатора.

2.2 Архітектура програмно-апаратного комплексу

Для коректної роботи додатка необхідні наступні апаратні й системні програмні засоби:

1) ADO

Використання ADO є альтернативою Borland Database Engine (BDE), що забезпечує більш ефективну роботу з даними. Для використання цієї можливості на вашому комп'ютері повинна бути встановлена система ADO 2.1 або більш старша версія. Крім того повинна бути встановлена клієнтська система доступу до даних, наприклад, Microsoft SQL Server, а в ODBC повинен бути драйвер OLE DB для того типу баз даних, з якими ви працюєте.

2) Microsoft Office Access 2003

Microsoft Office Access 2003 - це система керування базами даних у якій можна створювати й редагувати бази даних.

Microsoft Office Access 2003 дозволяє переглядати відомості про залежность між об'єктами бази даних. Перегляд списку об'єктів, використовуваних зазначеним об'єктом, допомагає здійснювати підтримку бази даних і запобігати помилкам, пов'язаним із втратою джерел записів.

Додаток Microsoft Access є потужною й високопродуктивною 32- розрядною системою керування реляційною базою даних (далі СУБД).

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

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

· СУБД розробляються з метою забезпечення ефективної обробки великих обсягів інформації, більших, ніж ті, з якими справляються електронні таблиці.

· СУБД може легко зв'язувати дві таблиці так, що для користувача вони будуть представлятися однієї таблицею. Реалізувати таку можливість в електронних таблицях практично неможливо.

· СУБД мінімізують загальний обсяг бази даних. Для цього таблиці що містять дані які повторюються, розбиваються на кілька зв'язаних таблиць.

Access - потужний додаток Windows. При цьому продуктивність СУБД органічно сполучається з усіма зручностями й перевагами Windows. [3]

Реляційна СУБД Access забезпечує доступ до всіх типів даних і дозволяє одночасно використовувати кілька таблиць бази даних. Можна використовувати таблиці, створені в середовищі Paradox або dbase. Працюючи в середовищі Microsoft Office, користувач одержує у своє розпорядження повністю сумісні з Access текстові документи(Word), електронні таблиці(Excel), презентації(Power Point). За допомогою нових розширень для Internet можна прямо взаємодіяти з даними з World Wide Web і транслювати вистава даних мовою HTML, забезпечуючи роботу з такими додатками як Internet Explorer і Netscape Navigator.

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

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

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

У загальному значенні - сукупність відомостей про конкретні об'єкти реального світу в якій-небудь предметній області або розділі предметної області. У термінах СУБД MS Access база даних - це набір даних і об'єктів, зв'язаних спільним завданням. Кожна база даних - це сукупність таблиць, запитів, форм, звітів, макросів і модулів, яка зберігається у файлі з довільним іменем і розширенням “*.mdb”.

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

Поряд із традиційними інструментами доступу до даних Borland Database Engine і ODBC у додатках Delphi можна застосовувати технологію Microsoft Activex Data Objects (ADO), яка заснована на можливостях СОМ, а саме інтерфейсів OLE DB.

Технологія ADO завоювала популярність у розроблювачів, завдяки універсальності -- базовий набір інтерфейсів OLE DB є в кожній сучасній операційній системі Microsoft. Тому для забезпечення доступу додатка до даних досить лише правильно вказати провайдер з'єднання ADO і потім переносити програму на будь-який комп'ютер, де є необхідна база даних і, звичайно, установлена ADO. [4]

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

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

Список установлених у даній операційній системі провайдерів доступний для вибору при установці з'єднання через компонент Tadoconnection.

При інсталяції Microsoft Activex Data Objects в операційній системі встановлюються наступні стандартні провайдери.

· Microsoft Jet OLE DB Provider забезпечує з'єднання з даними СУБД Access за допомогою технології ВАТ.

· Microsoft OLE DB Provider for Microsoft Indexing Service забезпечує доступ тільки для читання до файлів і Internet-Ресурсам Microsoft Indexing Service.

· Microsoft OLE DB Provider for Microsoft Active Directory Service забезпечує доступ до ресурсів служби каталогів (Active Directory Service).

· Microsoft OLE DB Provider for Internet Publishing дозволяє використовувати ресурси, надавані Microsoft Frontpage, Microsoft Internet Information Server, http-файли.

· Microsoft Data Shaping Service for OLE DB дозволяє використовувати ієрархічні набори даних.

· Microsoft OLE DB Simple Provider призначений для організації доступу до джерел даних, що підтримують тільки базисні можливості OLE DB.

· Microsoft OLE DB Provider for ODBC drivers забезпечує доступ до даних, які вже "прописані" за допомогою драйверів ODBC. Однак реальне використання настільки екзотичних варіантів з'єднань представляється проблематичним. Драйвери ODBC і так славляться своєю повільністю, тому додатковий шар сервісів тут ні до чого.

· Microsoft OLE DB Provider for Oracle забезпечує з'єднання із сервером Oracle.

· Microsoft OLE DB Provider for SQL Server забезпечує з'єднання із сервером Microsoft SQL Server.

У програмі «Bdlibrary» використовується провайдер Microsoft Jet OLE DB Provider, тому що таблиці даних, з якими вона взаємодіє, були створені в СУБД Access. [5]

2.3 Проектування БД «Расписание» у середовищі СУБД Access

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

Логічна структура реляційної бази даних Access є адекватним відображенням отриманої інформаційно-логічної моделі предметної області. Для канонічної моделі не потрібно додаткових перетворень. Кожний інформаційний об'єкт моделі даних відображається реляційною таблицею. Структура реляційної таблиці визначається реквізитним складом відповідного інформаційного об'єкта, де кожне поле відповідає одному з реквізитів об'єкта. Ключові реквізити об'єкта утворюють унікальний ключ реляційної таблиці. Для кожного поля задається тип, розмір даних і ін. властивості. Запису таблиці відповідають екземплярам об'єкта й формуються при завантаженні таблиці.

Зв'язки між об'єктами даних реалізуються однаковими реквізитами - ключами зв'язки у відповідних таблицях. При цьому ключем зв'язку типу 1:Б(один-до-багатьох) завжди є унікальний ключ головної таблиці(мал.1).

Мал.1 Схема даних

Щоб створити базу даних «Расписание» потрібні дані про викладачів, групи, аудиторії, тип заняття, початок і кінець пари.

Таблиця «Преподаватели» повинна мати вигляд:

Преподаватели

Код преподавателя

Ф И О

1

Семенихина Елена Владимировна

2

Петренко Сергей Иванович

3

Дегтярева Неля Владимировна

Таблиця «Аудитория» наступна:

Аудитория

Код аудитории

Номер

1

102

2

104

3

105

4

245

5

342

6

442

Таблиця «Занятия»:

Занятия

Код занятия

Тип занятия

1

Maple

2

veb-дизайн

3

Методика преподавания информатики

Таблиця «Время пары»:

Время пары

№пары

Начало

Конец

1

8:00

9:20

2

9:30

10:50

3

11:00

12:20

4

12:50

14:10

5

14:20

15:40

6

15:50

17:10

7

17:20

18:40

8

18:50

20:10

Таблиця «Группы»:

Группы

Код группы

Факультет

Специальность

Курс

Номер

1

Физмат

информатика

4

441

2

Физмат

экономика

4

442

3

Физмат

математика

4

451

4

Физмат

математика

4

452

5

Физмат

физики - ученые

4

Ф-4

Тоді, виходячи зі зв'язків які встановлені в даній БД отримаємо таблицю «Расписание»:

Расписание

Код занятия

Дата

№пары

Группа

Тип занятия

Преподаватель

Аудитория

4

12.12.2011

1

441

veb-дизайн

Дегтярева Неля Владимировна

245

5

12.12.2011

2

441

veb-дизайн

Дегтярева Неля Владимировна

245

6

12.12.2011

3

442

maple

Семенихина Елена Владимировна

104

7

12.12.2011

4

451

maple

Семенихина Елена Владимировна

104

8

13.12.2011

1

441

методика преподавания информатики

Петренко Сергей Иванович

342

9

13.12.2011

2

451

методика преподавания информатики

Петренко Сергей Иванович

342

10

13.12.2011

1

442

veb-дизайн

Дегтярева Неля Владимировна

245

11

13.12.2011

2

442

veb-дизайн

Дегтярева Неля Владимировна

245

12

13.12.2011

3

452

maple

Семенихина Елена Владимировна

102

13

14.12.2011

1

Ф-4

veb-дизайн

Дегтярева Неля Владимировна

245

14

14.12.2011

2

Ф-4

veb-дизайн

Дегтярева Неля Владимировна

245

15

14.12.2011

3

442

maple

Семенихина Елена Владимировна

105

16

14.12.2011

4

442

maple

Семенихина Елена Владимировна

105

17

14.12.2011

5

441

maple

Семенихина Елена Владимировна

245

18

14.12.2011

6

441

maple

Семенихина Елена Владимировна

245

19

15.12.2011

1

441

методика преподавания информатики

Петренко Сергей Иванович

442

20

15.12.2011

2

441

методика преподавания информатики

Петренко Сергей Иванович

442

21

15.12.2011

1

452

veb-дизайн

Дегтярева Неля Владимировна

245

22

15.12.2011

2

452

veb-дизайн

Дегтярева Неля Владимировна

245

23

16.12.2011

1

452

maple

Семенихина Елена Владимировна

342

24

16.12.2011

2

452

maple

Семенихина Елена Владимировна

245

25

16.12.2011

3

Ф-4

maple

Семенихина Елена Владимировна

104

26

16.12.2011

4

Ф-4

maple

Семенихина Елена Владимировна

245

2.4 Розробка програми до бази даних «Рассписание»

Створивши базу даних можна переходити до розробки програми «Рассписание» в програмному середовищі Borland Delphi.

Для того щоб створити псевдонім, треба:

1. Вибрати “Администрирование” в Панелі керування .(Мал 1)

Мал 1. Панель керування

2. Вибрати “Джерела даних (ODBC)” .(Мал 2)

Мал 2. Джерела даних (ODBC)

3. В “ Пользовательском DNS” натискаємо кнопку “Добавить” і вибираємо “Microsoft Access Driver (*.mdb)” .(Мал 3)

Мал 3. Створення нового джерела даних

4. “Имя источника данных” - прописуємо необхідний Alias Бази даних. Потім натискаємо кнопку “Выбрать” і вказуємо файл із базою даних (розширення *.mdb). (Мал 4)

Мал. 4. Установка драйвера ODBC

Потім “ОК”. Псевдонім до Бази даних створений.

Головна форма (Forml) - представлено на Мал. 5.

Мал 5. Головна форма

На формі розташована таблиця із розкладом на один тиждень. За допомогою створеної програми можна дізнатися про вільні аудиторій на певній(заданій) парі(Мал.6).

Мал.6. Фільтр даних

ВИСНОВКИ ДО ІІ РОЗДІЛУ

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

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

ВИСНОВКИ

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

Процес розробки в Delphi гранично спрощений. У першу чергу це відноситься до створення інтерфейсу, на який йде 80% часу розробки програми. Ви просто ставите потрібні компоненти на поверхню Windows-вікна (в Delphi воно називається формою) і налаштовуєте їх властивості за допомогою спеціального інструмента (Object Inspector). З його допомогою можна пов'язати події цих компонентів (натиснути на кнопку, вибір мишею елемента у списку і так далі) з кодом його обробки - і ось простий додаток готове. Причому розробник отримує в своє розпорядження потужні засоби налагодження (аж до покрокового виконання команд процесора), зручну контекстну довідкову систему (в тому числі і по Microsoft API), засоби колективної роботи над проектом, всього просто не перелічити.

Ми створили базу даних в середовищі програмування Borland Delphi, яка полегшила складання та використання розкладів. Завдяки цьому:

- автоматизували одну зі сторін практичної діяльності людини з використанням баз даних;

- полегшили опрацювання розкладів за допомогою розробленої програми в Borland Delphi;

Отже завдання курсової роботи виконане.

СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ

1. Borland Delphi 6. Руководство разработчика.: Пер. с англ. - М.: Вильямс, 2002. - 1120 с.

2. Баас Р., Фервай М., Гюнтер Х. Delphi 5: для пользователя. Пер. с нім. - К.: BHVб, 2000 - 496 с.

3. Бобровский С. Delphi 6 и Kylix: Библиотека программиста. - СПб.: Санкт-Петербург, 2002. - 560 с.

4. Бобровский С. Delphi 7. Учебный курс. - СПб.: Санкт-Петербург,, 2004. - 735 с.

5. Гофман В.Э., Хомоненко А.Д. Delphi 6. - СПб.: БХВ-Петербург, 2001. -1135 с.

6. Дарахвелидазе П.Г., Марков Е.П. Программирование в Delphi 7. - СПб.: БХВ-Петербург, 2003. - 784 с.

7. Шедулин А.И. Теория расписаний. Учебное пособие для вузов. - Москва, 2005 р.

8. Диго С.М. Базы данных: проектирование и использование. Учебное пособие для вузов. - Москва.: Фінанси і статистика, 2005.

9. Кузин А.В., Демин В.М. Разработка баз данных в системе Microsoft Access: Учебник - Підручник - м.: Форум: Інфра-Москва, 2005г.

10. Тиори Т., Фрай Дж.: Проектирование структур баз данных. Москва, 1985.

11. Сигнор Р., Стегман М.О. Использование ODBC для доступа к базам данных - М.: БИНОМ, 1995. - 384 с.

12. Фленов М.Е. Библия Delphi. - СПб.: БХВ-Петербург, 2004. - 880 с.

13. http://devdelphi.ru/?p=16

Размещено на Allbest.ru


Подобные документы

  • Теоретичні відомості про пакет ІЗВП Borland Delphi та СУБД MS Access, оцінка їх функціональних особливостей. Опис структури бази даних. Проектування інтерфейсу програми, опис її логічної структури та функцій. Контроль коректності вхідних, вихідних даних.

    курсовая работа [4,5 M], добавлен 03.01.2014

  • Властивості та функції бази даних. Вибір та обгрутування програмного забезпечення Microsoft Access. Розробка бази даних за методом сутність-зв’язок. Етапи розробки бази даних "Відділ комп’ютерних комплектуючих" за допомогою СУБД Microsoft Office Access.

    курсовая работа [7,4 M], добавлен 12.06.2019

  • Створення баз даних з використанням платформи Microsoft Access 2010 та структурованих запитів SQL. ER-діаграма бази даних з описом кожної сутності та її атрибутів. Розробка інтерфейсу, елементів навігації та макросів для автоматичного виконання запитів.

    курсовая работа [3,1 M], добавлен 21.08.2014

  • Договірна діяльність організацій як предмет проекту створення бази даних. Основні етапи роботи з Microsoft Access зі створення бази даних. Мінімальний список характеристик, які потрібно врахувати в ході роботи. Ознайомлення з основними об'єктами СУБД.

    лабораторная работа [1,7 M], добавлен 21.04.2011

  • Проектування бази даних "Аптека" у Microsoft Access, розробка структури таблиць, ключових полів і схеми даних. Створення запитів різних типів, екранних форм різного виду для введення і перегляду даних. Створення кнопкових форм, що полегшують навігацію.

    дипломная работа [3,1 M], добавлен 16.11.2014

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

    лабораторная работа [397,7 K], добавлен 09.09.2010

  • Проектування інформаційної системи; концептуальне (інфологічне) проектування, побудова ER-діаграми, нормалізація даних. Даталогічне проектування баз даних, фізичне проектування інформаційних систем. СУБД Access: об'єкти, створення таблиць, запитів, форм.

    курсовая работа [13,9 M], добавлен 09.01.2010

  • Принципи роботи інтерфейсу ADO для роботи в СУБД MS Access. Створення додатку "Довідник фармацевта" на основі Borland Delphi 7.0, що допомагає ввести звітну документацію, формувати підсумки роботи зберігати дані про ліки та їх ціни, постачальників.

    курсовая работа [1,2 M], добавлен 30.06.2015

  • Система управління базами даних, ієрархічна модель даних, її проектування та створення. Інтерфейс Microsoft Access, створення структури таблиці, запитів, форм, звітів, макросів. Аналіз зв'язків між таблицями, що описують поняття проблемного середовища.

    курсовая работа [2,7 M], добавлен 10.11.2010

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

    курсовая работа [1,3 M], добавлен 04.10.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.