Розробка бази даних 'Архітектурна компанія'

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Украинский
    ,
    Формат файла:
    MS Word
    368,75 Кб
  • Опубликовано:
    2015-07-11
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Розробка бази даних 'Архітектурна компанія'

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

ТАВРІЙСЬКИЙ ДЕРЖАВНИЙ АГРОТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ

факультет ІКТ

кафедра ІТ









КУРСОВА РОБОТА

з дисципліни

«Організація баз даних і знань»

на тему:

«розробка бази даних “архітектурна компанія” »

Виконав:

Студент 21 кн групи

Івахненко Євген

Перевірив:

доц. Шаров С.В.



Мелітополь - 2015

ЗМІСТ

ВСТУП

РОЗДІЛ 1: ОСНОВНІ ВІДОМОСТІ ПРО РЕЛЯЦІЙНИХ БАЗАХ ДАНИХ. РЕЛЯЦІЙНА МОДЕЛЬ ДАНИХ

.1 Відносини і Ключі

1.2 Введення в SQL

1.3. Характеристика Му SqL

.3.1 Оператор select

.3.2 Агрегатні функції і угрупування даних

РОЗДІЛ 2: БД АРХІТЕКТУРНА КОМПАНІЯ

.1 Загальний опис бази даних

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

ВИСНОВКИ

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

ВСТУП

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

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

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

Сучасні системи управління базами даних надають розвинені засоби для організованого доступу до інформації. Цілком логічно застосування технології систем управління базами даних в мережі Інтернет [4;с.3].

Розділ 1. Основні відомості про реляційних базах даних. Реляційна модель даних

.1      Відносини і ключі

Реляційна модель даних була запропонована співробітником фірми IBM Едгаром Коддом, який виклав основні ідеї в статті «Реляційна модель для великих банків спільно використовуваних даних». Реляційна модель даних дозволила зняти недоліки мережевих і ієрархічних моделей, а наочність і сувора теоретична проробка принесли велику популярність моделі серед розробників баз даних.

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

Рис 1.1 - Альтернативні варіанти термінів

Сутність - описує об'єкт, дані про якого зберігаються в базі даних. Дані про сутність зберігаються у відношенні.

Атрибут - являє собою властивість, що описує сутність. У структурі відносини кожен атрибут має назву і тип.

Кортеж - визначається як окрема сутність.

Доменом - є набір всіх можливих значень певного атрибуту відносини.

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

Рис. 1.2 - приклад табличної організації даних

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

Зв'язки між кортежами реалізуються у вигляді ключів.

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

Первинний ключ - це ключ, значення якого однозначно ідентифікують кожен з його кортежів в заданому відношенні.

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

Зв'язування відносин визначає їх підпорядкованість. Існують три види зв'язування відносин:

один - до одного;

один - до багатьох;

багато - до багатьох.

Розглянемо більш детально кожен з цих видів. Зв'язування відносин виду «один - до одного» зазвичай використовується при розбитті відносин з великим числом атрибутів на кілька частин. У цьому випадку в одному відношенні залишаються атрибути з найбільш важливою і часто використовуваною інформацією, а інші атрибути переносяться в інші відносини (одному кортежу одного відносини відповідає один кортеж іншого відношення).

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

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

На практиці зв'язування відносин виду «багато - до багатьох» використовується досить рідко і для реалізації такого ставлення в реляційної моделі перетвориться в зв'язування декількох відносин виду «один - до багатьох». При зв'язуванні відносин необхідно дотримуватися двох фундаментальним правилами цілісності: первинний ключ не може бути порожнім, і зовнішній ключ може бути або порожнім, або дорівнює значенню первинного ключа, на який він посилається. Тільки в цьому випадку можна домогтися несуперечності представлення даних [2;с.32-35].

Можна коротко сформулювати особливості реляційної бази даних:

дані зберігаються в таблицях, що складаються із стовпців і рядків;

на перетині кожного стовпця і рядка знаходиться тільки одне значення;

у кожного стовпця є своє ім'я, яке служить його назвою, і всі значення в одному стовпці мають один тип. Наприклад, у стовпці id_catalogs всі значення мають цілочисельний тип, а в рядку name - текстовий;     

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

запити до бази даних повертають результат у вигляді таблиць, які теж можуть виступати як об'єкт запитів [3;с.9].

1.2 Введення в sql

база інформаційний управління інтернет

MySQL - це система управління базами даних (СУБД) з відкритим кодом. Це високопродуктивна і масштабована СУБД з безліччю програмних інтерфейсів. Вона володіє величезними функціональними можливостями і підходить для вирішення найрізноманітніших завдань [1;с.6].

Більшість СУБД використовують мову SQL (Structured Query Language - мова структурованих запитів), так як він зручний для опису логічних підмножин БД

Призначення SQL:

виконання основних операцій маніпулювання даними (такі як вставка, модифікація і видалення даних з таблиць);

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

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

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

У міру того як окремі персональні комп'ютери поступаються дорогою мереж з архітектурою клієнт / сервер, SQL видозмінює ринок баз даних для персональних комп'ютерів. SQL застосовується навіть при оперативній обробці транзакцій, спростовуючи існувало раніше думка, що через низький швидкодії реляційні бази даних ніколи не зможуть використовуватися в додатках для обробки транзакцій.і специфікація SAA компанії IBM SQL відіграє ключову роль в якості мови доступу до баз даних, що об'єднує численні несумісні комп'ютерні сімейства компанії IBM. Ця роль була відведена йому ще в специфікації SAA (Systems Application Architecture - архітектура прикладних систем) компанії IBM в 1987 році. Хоча головні цілі SAA так і не були досягнуті, об'єднуюча роль SQL з часом стала ще важливіше.

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

1.3 Характеристика MySQL

- це вільно поширювана СУБД, розроблена компанією MySQL AB. MySQL має клієнт-серверну архітектуру: до сервера MySQL можуть звертатися різні клієнтські програми, в тому числі з віддалених комп'ютерів. Розглянемо найважливіші особливості MySQL, завдяки яким ця програма набула популярності:

MySQL - це СУБД з відкритим кодом. Будь-який бажаючий може безкоштовно завантажити програму на сайті розробника (#"870030.files/image003.jpg">

Рис. 2.1 - Структура оператора select

Розглянемо синтаксис оператора select (рис. 2.1).

В даному випадку <value expression> - вираз, який виробляє значення. Воно може включати в себе, або містити:

імена стовпців <column name> в таблиці, <table name>

є ім'ям або синонімом таблиці, <alias> являє собою тимчасовий синонім для таблиці, <predicate> - умова, яка може бути вірним або невірним для кожної рядка або комбінації рядків таблиці в реченні FROM, <integer> - число з десятковою крапкою.

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

Необхідно відзначити, що структурований мова запитів SQL має велику кількість діалектів, які мають різні можливості для обробки даних і процедурні надбудови, наприклад, Procedural SQL, Transact-SQL, PostgreSQL, проте всі вони лише розширюють стандарт SQL2.

Саме на стандарт SQL2 орієнтовані наведені нижче приклади використання структурованого мови запитів. В якості предметної області для демонстрації роботи запитів будемо використовувати навчальну таблицю PC, в якій зберігається інформація про різних конфігураціях персональних комп'ютерів (малюнок 2.2).

Дана таблиця складається з шести стовпців:

price - в цьому стовпці зберігається числова інформація про вартість комп'ютера;

speed - являє собою стовпець з числовою інформацією про частоту роботи мікропроцесора;

hd - містить числову інформацію про розмір жорсткого диска, ram - в цьому стовпці зберігається розмір оперативної пам'яті комп'ютера в числовому вигляді;

cd - стовпець з текстовою інформацією про швидкість роботи CD-ROM;

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

Рис.2.2 - Інформація, що міститься в навчальній таблиці PC

.3.2 Агрегатні функції і угрупування даних

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

Функція COUNT (*) повертає кількість рядків джерела даних.

Функція COUNT (<ім'я поля>) повертає кількість значень у вказаному стовпці.

Функція SUM (<ім'я поля>) повертає суму значень у вказаному стовпці.

Функція AVG (<ім'я поля>) повертає середнє значення у вказаному стовпці.

Функція MIN (<ім'я поля>) повертає мінімальне значення у вказаному стовпці.

Функція MAX (<ім'я поля>) повертає максимальне значення у вказаному стовпці.

Функції COUNT, MIN і MAX застосовні до будь-яких типів даних, SUM і AVG застосовуються тільки для числових полів. Розглянемо більш докладно використання кожної з цих функцій. Пошук максимального і мінімального значень у вибірці даних здійснюється за допомогою агрегатних функцій MAX і MIN: SELECT MIN (price) AS Min_price, MAX (price) AS Max_price FROM PC.

Для отримання кількості рядків в горизонтальній вибірці даних використовується функція COUNT: SELECT COUNT (*) AS Qty FROM PC WHERE cd IN ('50x', '52x') Для того, щоб при отриманні результату агрегатних функцій використовувалися тільки унікальні значення, при їх аргументі можна також використовувати параметр DISTINCT: COUNT (DISTINCT cd) AS Qty FROM PC WHERE cd IN ('50x', '52x')

Пошук середнього значення у вибірці даних здійснюється за допомогою агрегатної функції AVG: AVG (hd) AS Avg_hd FROM PC WHERE cd = '50x'

Результати відповідних запитів наведено на рис. 2.3

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

Існує кілька загальних правил виконання агрегатних функцій, дотримання яких дозволить уникнути багатьох помилок при розробці запитів:

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

) аргумент агрегатної функції не може сам утримувати агрегатні функції;

) результатом виконання функції COUNT є ціле число. Інші агрегатні функції успадковують типи даних оброблюваних значень;         

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

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

Наведемо приклад використання угруповання даних:ram, COUNT (ram) AS Qty_ram, AVG (price) AS Avg_price FROM PC GROUP BY ram

Результат виконання даного запиту наведено на рис. 2.4

рис. 2.4- Результат виконання даного запиту

Функціональність угруповання даних розширюється за рахунок застосування пропозиції HAVING, яке використовується після угруповання для визначення предиката, фільтруючого групи за значеннями агрегатних функцій. Ця пропозиція необхідно для перевірки значень, які отримані за допомогою агрегатної функції: ram, AVG (price) AS Avg_price FROM PC GROUP BY ram HAVING ram IN (256, 512)

У пропозиції HAVING не можна застосовувати псевдонім (Avg_price), використовуваний для іменування значень агрегатної функції:ram, COUNT (ram) AS Qty_ram, AVG (price) AS Avg_price FROM PC GROUP BY ram HAVING AVG (price)> 700

Результати виконання групування даних з визначенням предиката представлені на рис. 2.5

Рис. 2.5 Результати виконання групування даних з визначенням предиката: а) простий предикат, б) складний предикат [2;с.59-61,66-68].

РОЗДІЛ 2. БД АРХІТЕКТУРНА КОМПАНІЯ

.1 Загальний опис бази даних

База даних, над якою я працював, має назву «Архітектурна компанія» наведемо скріншот цієї бази на ACCESS:


З даної таблиці бачимо, що дана БД має 7 таблиць.

Отже, перерахуємо їх:

Компанія (первинний ключ Код_компанії);

Партнери (первинний ключ Код_партнера);

Персонал (первинний ключ Код_працівника);

Замовлення (первинний ключ Код_працівника);

Проект (первинний ключ №_проекту);

Будівельні матеріали (первинний ключ Код_постачальника);

Клієнт (первинний ключ Код_клієнта).

Вона має такі зв'язки:

Код_партнера (Компанія) до Код_партнера (Партнери) ставлення виду «один - до багатьох»;

Код_компанії (Компанія) до Код_компанії (Персонал) ставлення виду «один - до багатьох»;

№_Заказу (Замовлення) до №_проекту (Проект) ставлення виду «один - до одного»;

Код_постачальника (Замовлення) до Код_постачальника (Будівельні матеріали) відносини виду «один - до одного»;

Код_клієнта (Клієнт) до Код_клієнта (замовлення) ставлення виду «один - до багатьох».

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

Код на MYQSL:TABLE Companya (Kod_kompanii INT(10), Name_company VARCHAR(50),Phone_fax VARCHAR(50), Email VARCHAR(50), Address VARCHAR(50), Kod_partnёra INT(10));



ВИСНОВКИ

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

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

З метою забезпечення ефективності доступу записи даних організовують як множину фактів (елемент даних).- компактний багатопотоковий сервер баз даних. Характеризується високою швидкістю, стійкістю і простотою використання.був розроблений компанією «ТсХ» для підвищення швидкодії обробки великих баз даних. Ця система керування базами даних (СКБД) з відкритим кодом була створена як альтернатива комерційним системам. MySQL з самого початку була дуже схожою на mSQL, проте з часом вона все розширювалася і зараз MySQL - одна з найпоширеніших систем керування базами даних. Вона використовується, в першу чергу, для створення динамічних веб-сторінок, оскільки має чудову підтримку з боку різноманітних мов програмування.

Можливості сервера MySQL:

простота у встановленні та використанні;

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

- кількість рядків у таблицях може досягати 50 млн;       

висока швидкість виконання команд;

наявність простої і ефективної системи безпеки.

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

1) В. Гольцман. «MySQL 5.0. Библиотека программиста» Текст предоставлен издательством http://litres.ru/ MySQL 5.0. Библиотека программиста: Питер; Санкт-Петербург; 2010.-253 с.

) Зрюмов, Е. А. Базы данных для инженеров [Текст] : учебное пособие / Е. А. Зрюмов, А. Г. Зрюмова; Алт. гос. техн. ун-т им. И. И. Ползунова. - Барнаул : Изд-во АлтГТУ, 2010. - 131 с.

) Кузнецов М.В. К89 MySQL / М.В. Кузнецов, И.В. Симдянов. -СПб.: БХВ-Петербург, 2010.-1024.:ил.

) Хомоненко А. Д., Цыганков В. М., Мальцев М. Г. Базы данных: Учебник для высших учебных заведений / Под ред. np(xj). А. Д. Хомоненко. -6-е изд., доп. - СПб.: КОРОНА-Век, 2009. - 736 с.

) SQL - стандартный язык реляционных баз данных [Електронний ресурс]. - Режим доступу: http://www.parta.com.ua/referats/view/7761/ - Назва з екрана.

) Сервер базы данных [Електронний ресурс]. - Режим доступу:://ru.wikipedia.org/wiki/Сервер_базы_данных - Назва з екрана.

Похожие работы на - Розробка бази даних 'Архітектурна компанія'

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!