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

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




































Главная

Программирование, компьютеры и кибернетика
Розробка гнучкої системи управління інформаційними потоками магазину комп’ютерної техніки

Різновиди архітектур баз даних. Архітектура "файл-сервер" і локальні бази даних. Обґрунтування вибору архітектури стосовно проектованої системи. Основні концепції мови SQL. Структура запитів до окремих таблиць. Інтерфейс користувача проектованої системи.


посмотреть текст работы


скачать работу можно здесь


полная информация о работе


весь список подобных работ


Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных

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

Міністерство освіти і науки України
Кременчуцького університету економіки, інформаційних технологій і управління
7.091402 “Гнучкі комп'ютеризовані системи та робототехніка“
«Розробка гнучкої системи управління інформаційними потоками магазину комп'ютерної техніки»
Студента групи ГКС-05-д Книжника Олександра Анатолійовича
Керівник роботи доц., к.т.н. Моня Григорій Михайлович
зі спеціальної частини доц., к.т.н. Лукашенко Й.М
з програмної частини доц., к.т.н. Вдовиченко І.Н.
з економічної частини доц., к.е.н. Тимко Є.В.
з охорони праці доц., к.т.н. Климович Г.Б
нормоконтроль ст. викл. Захарова Г.Б.
Завідувач кафедри ТК доц., к.т.н. Старіков О.М.
Міністерство освіти і науки України
Кременчуцького університету економіки, інформаційних технологій і управління
Спеціальність 7.091402 “Гнучкі комп'ютеризовані системи та робототехніка“
Зав. кафедрою доц., к.т.н. Старіков О.М.
1. Тема роботи: Розробка гнучкої системи управління інформаційними потоками магазину______
комп'ютерної техніки _________________________________________
затверджена наказом по інституту від " 29 " жовтня 2009 р. № 73С-01______________
2. Термін здачі студентом закінченої роботи 25.05.10. _
3. Вхідні дані до роботи: Вимоги до кінцевого програмного продукту, вихідні масиви даних, програмна документація.
4. Зміст розрахунково-пояснювальної записки (перелік питань, що підлягають розробці): Постановка завдання; Теоретичне дослідження принципів організації баз даних в DELPHI;Особливості використання мови SQL при розробці інформаційних систем; Опис функціональних можливостей та програмної реалізації проектованої системи; Економічне обґрунтування доцільності розробки програмного продукту; Охорона праці.
5. Перелік графічного матеріалу (з точними вказівками обов'язкових креслень)
1. Загальний склад засобів для роботи системи з БД
2. Схема взаємодії з базою даних за допомогою SQL
3. Архітектура системи при роботі з локальними БД
4. Логіко-функціональна схема роботи користувача із системою
5. Структурна схема взаємозв'язку таблиць бази даних
7. Приклади вікон системи в різних робочих режимах
8. Приклади вигляду форм системи на етапі проектування
6. Консультанти з роботи, з вказівками розділів роботи, що належать до них
7. Дата видачі завдання 01.11.09 р.
Завдання прийняв до виконання ____________________
Найменування етапів дипломної роботи
Отримання завдання на дипломну роботу
Теоретичне дослідження інструментальних засобів реалізації проекту
Програмна частина (постановка задачі, створення програмного забезпечення, опис алгоритму рішення задачі, проектування та опис інтерфейсу користувача, опис програми)
Оформлення електронних додатків до диплому
Представлення дипломної роботи до захисту
Студент-дипломник _________________
Метою дипломної роботи є створення гнучкої системи управління інформаційними потоками магазину комп'ютерної техніки. Розроблена система реалізована з використанням системи програмування Delph 7 і сервера баз даних під керуванням MS SQL Server 2008.
У дослідницькій частині дипломної роботи був зроблений порівняльний аналіз різних архітектур баз даних і був зроблений аргументований вибір на користь клієнт-серверної архітектури.
Розділів 6, схем та малюнків 53, таблиць 18, бібліографічних посилань 30, загальний обсяг - 128.
Целью дипломной работы является создание гибкой системы управления информационными потоками магазина компьютерной техники. Разработанная система реализована с использованием системы программирования Delphi 7 и сервера баз данных под управлением MS SQL Server 2008.
В исследовательской части дипломной работы был осуществлен сравнительный анализ различных архитектур баз данных и был сделанный аргументированный выбор в пользу клиент-серверной архитектуры.
Разделов 6, схем и рисунков 53, таблиц 18, библиографических ссылок 30, общий объем - 128.
The purpose of the diploma work is development of the flexible informative threads control system. The developed system is realized with the use of the system of programing Delphi 7 and SQL-Server under the management of MS SQL Server 2008.
Comparative analysis of different architectures of databases was carried in the research part of diploma work and there was the done argued choice in behalf on client - server architecture.
Sections 6, circuits and figures 53, tables 18, bibliographic references 30, total amount - 128.
1.1 Найме нування та галузь використання
1.3 Характеристика розробл еного програмного забезпечення
2. ТЕОРЕТИЧНЕ ДОСЛІДЖЕННЯ ПРИНЦИПІВ ОРГАН ІЗАЦІЇ БАЗ ДАНИХ В DELPHI
2.1 Основні поняття і р ізновиди архітектур баз даних
2.2 Архітектура «файл- сервер» і локальні бази даних
2.4 Обґрунтування вибору архітектури стосовно проектованої системи
3. ОСОБЛИВОСТІ ВИКОРИСТАННЯ МОВИ SQL ПРИ РОЗРОБЦІ ІНФОРМАЦІЙНИХ СИСТЕМ
3.1 Історія розвитку і основні концепції мови SQL
3.2 Структу ра запитів до окремих таблиць
3.4.3 В икористання оператора EXISTS
3.4.4 Використання об'єднання UNION
4. ОПИС ФУНКЦІОНАЛЬНИХ МОЖЛИВОСТЕЙ ТА ПРОГРАМНОЇ РЕАЛІЗАЦІЇ ПРОЕКТОВА НОЇ СИСТЕМИ
4.1 Функціональне призначення та техн ологічні особливості розробки
4.2 Логіко-функціональна схема роботи користувача з системою
4.3 Опис моделі й структури таблиць і подань бази даних SalesRecord
4.4. Інтерфейс користувача проектова ної системи
4.5 Програмна р еалізація системи SalesRecord
5 . ЕКОНОМІЧНЕ ОБҐРУНТУВАННЯ ДОЦІЛЬНОСТІ РОЗРОБКИ ПРОГРАМНОГО ПРОДУКТУ
6.1 Аналіз небезпечних і шкідливих фа кторів обчилювальному центрі
6.2 Заходи щодо нормалізації шкід ливих і небезпечних факторів
6.2.1 Захист від ел ектромагнітних випромінювань
6.2.2 Захист від ураження електричним струмом
6.2.3 За хист від статичної електрики
6.2.5 Оздоров лення повітряного середовища
6.2.6 Захист від ре нтгенівського випромінювання
6.2.7 Забезпече ння раціонального освітлення
Будь-яка організація має потребу у своєчасному доступі до інформації. Цінність інформації в сучасному світі дуже висока. Роль розпорядників інформації в сучасному світі найчастіше виконують бази даних. Бази даних забезпечують надійне зберігання інформації в структурованому виді й своєчасний доступ до неї. Практично будь-яка сучасна організація має потребу в базі даних, що задовольняє ті або інші потреби по зберіганню, керуванню й адмініструванню даних.
Існує багато вагомих причин перекладу існуючої інформації на комп'ютерну основу. Зараз вартість зберігання інформації у файлах ЕОМ дешевше, ніж на папері. Бази даних дозволяють зберігати, структурувати інформацію й витягати оптимальним для користувача образом. Використання клієнт/серверних технологій дозволяють зберегти значні засоби, а головне й час для одержання необхідної інформації, а також спрощують доступ і ведення, оскільки вони ґрунтуються на комплексній обробці даних і централізації їхнього зберігання. Крім того ЕОМ дозволяє зберігати будь-які формати даних текст, креслення, дані в рукописній формі, фотографії, записі голосу й т.д.
Для використання настільки величезних обсягів збереженої інформації, крім розвитку системних пристроїв, засобів передачі даних, пам'яті необхідні засоби забезпечення діалогу людина-ЕОМ, які дозволяють користувачеві вводити запити, читати файли, модифікувати збережені дані, додавати нові дані або приймати рішення на підставі збережених даних. Для забезпечення цих функцій створені спеціалізовані засоби - системи керування базами даних (СУБД). Сучасні СУБД - багатокористувальницькі системи керування базою даних, які спеціалізується на керуванні масивом інформації одним або безліччю одночасно працюючих користувачів.
Метою дипломної роботи є створення гнучкої системи управління інформаційними потоками магазину комп'ютерної техніки.
Реалізація дипломної роботи проводиться в системі програмування Delphi 7, що має широкі можливостями по створенню додатків баз даних, необхідним набором драйверів для доступу до найвідоміших форматів баз даних, зручними й розвиненими засобами для доступу до інформації, розташованої як на локальному диску, так і на вилученому сервері, а також більшим колекцією візуальних компонентів для побудови відображуваних на екрані вікон, що необхідно для створення зручного інтерфейсу між користувачем і виконавчим кодом.
Система візуального програмування Delphi користується великою популярністю серед широкого круга користувачів: від програмістів, що починають, до досвідчених розробників складних додатків, що займаються створенням великих інформаційних систем. Delphi дозволяє швидко і ефективно розробляти найрізноманітніші програми. Вона має розвинені можливості по створенню призначеного для користувача інтерфейсу, широкий набір функцій, методів і властивостей для вирішення прикладних розрахунково-обчислювальних завдань.
Для завдання яких-небудь властивостей елементу програми, що розробляється, зовсім не обов'язково писати масивні текстові рядки, досить змінити цю властивість в інспекторі об'єктів (так званому моніторі властивостей вибраного елементу). Ця зміна автоматично доповнить або модифікує програмний код.
Це великий плюс у візуальній технології програмування. Створюючи або модифікуючи свій програмний продукт, користувач не знаючи або не звертаючи уваги на деякі властивості елементу програми, а використовуючи тільки необхідні, пише повністю готовий робочий продукт, деколи виступаючий на рівних по складності, з написаними в невізуальному редакторі.
1.1 Найменування та галузь використання
Найменування розробки: гнучка система управління інформаційними потоками магазину комп'ютерної техніки. Система дозволяє повністю автоматизувати процес ведення обліку й ефективного керування процесом закупівлі та продажу товару.
Підставою для розробки є наказ № 73С-01 від 29 жовтня 2009 р. по Криворізькому інституту КУЕІТУ.
Початок робіт: 01.11.09. Закінчення робіт: 25.05.10.
1.3 Характеристика розробленого програмного забезпечення
Гнучка система управління інформаційними потоками магазину комп'ютерної техніки була реалізована за допомогою інструментального засобу прискореної розробки програм системи програмування Delphi7, технології Rave Reports і сервера баз даних під керуванням MS SQL Server 2008.
· SalesRecord.exe - виконуємий файл, розробленої системи;
· SalesRecord_Data.mdf - файл бази даних SalesRecord, сервера баз даних MS SQL Server 2008.
· SalesRecord_Log.ldf - журнал транзакцій бази даних SalesRecord, сервера баз даних MS SQL Server 2008.
· Report.rav - проект звіту середовища Rave (Report Authoring Visual Environment).
Метою дипломної роботи є створення гнучкої системи управління інформаційними потоками магазину комп'ютерної техніки.
У дослідницькій частині дипломної роботи був зроблений порівняльний аналіз різних архітектур баз даних і був зроблений аргументований вибір на користь клієнт-серверної архітектури.
Вимоги до програмного забезпечення:
· Робота в середовищі операційних систем Windows 2000/XP/Vista/7;
· Відсутність додаткових вимог до розміщення здійсненних файлів;
· Додаткове програмне забезпечення: установка сервера БД MS SQL Server 2008;
Мінімальні вимоги до апаратного забезпечення:
· IBM-Сумісний комп'ютер, не нижче Pentium III, RAM-256Mb, SVGA-800*600*16bit, вільний простір на жорсткому диску на сервері не менш 100 Мб, на клієнтській машині - біля 5 Мб.
Джерелами розробки дипломної роботи є:
· загальний опис технології процесу;
2. ТЕОРЕТИЧНЕ ДОСЛІДЖЕННЯ ПРИНЦИПІВ ОРГАНІЗАЦІЇ БАЗ ДАНИХ В DELPHI
2.1 Основні поняття і різновиди архітектур баз даних
Для розгляду способів організації баз даних потрібно визначити декілька понять.
Ядро БД відповідає за управління даними в зовнішній пам'яті, управління буферами оперативної пам'яті, управління транзакціями і журналізацією. Відповідно, можна виділити такі компоненти ядра (принаймні, логічно, хоча в деяких системах ці компоненти виділяються явно), як менеджер даних, менеджер буферів, менеджер транзакцій. Ядро БД володіє власним інтерфейсом, не доступним користувачам безпосередньо і використовуваним в програмах, що створені компілятором SQL і утилітах БД. Ядро БД є основною резидентною частиною СУБД. При використанні архітектури "клієнт-сервер" ядро є основною складовою серверної частини системи.
Основною функцією компілятора мови БД є компіляція операторів мови БД в деяку виконувану програму.
В окремі утиліти БД звичайно виділяють такі процедури, які дуже невигідно виконувати з використанням мови БД, наприклад, завантаження і вивантаження БД, збір статистики, глобальна перевірка цілісності БД і т.д. Утиліти програмуються з використанням інтерфейсу ядра БД, а іноді навіть з проникненням всередину ядра.
Загальний склад засобів, необхідних для роботи готового додатку з БД, показаний на рис. 2.1.
Рис. 2.1 Загальний склад засобів для роботи готової системи з БД
Згідно цій загальній схемі, ми маємо ланцюжок:
Додаток --> Ядро БД --> бази даних. У структурі додатку є ланцюжок Невізуальні компоненти --> Візуальні компоненти. Невізуальні компоненти надають програмісту деякі функції по управлінню ядром бази даних, а також самими даними. За допомогою Візуальних компонент дані відображаються на екрані (таблиці, списки, випадні списки, графіки і ін.). Місцеположення ядра БД і самих баз даних в цьому ланцюжку не відбиті.
Місцеположення Ядра БД і баз даних залежить від використовуваної архітектури. Є чотири різновиди архітектури баз даних:
· багатоланкова (триланкова N-tier або multi-tier) архітектура.
Використання тієї або іншої архітектури накладає сильний відбиток на загальну ідеологію роботи додатку, на програмний код додатку, на склад компонентів для роботи з БД, використовуваних в додатку (перш за все це стосується невізуальних компонентів).
2.2 Архітектура «файл-сервер» і локальні бази даних
Локальні бази даних і архітектура "файл-сервер"
Рис. 2.2 Архітектура системи при роботі з локальними БД
При роботі з локальними базами даних самі БД розташовані на тому ж комп'ютері, що і програма, що здійснює доступ до них. Робота з БД відбувається в розрахованому на одного користувача режимі. Ядро БД розташоване на комп'ютері користувача. Програма відповідальна за підтримку цілісності БД і за виконання запитів до БД. Загальна схема розрахованої на одного користувача архітектури показана на рис. 2.2.
При роботі в архітектурі "файл-сервер" БД і програма розташовані на файловому сервері мережі (наприклад, Novell NetWare). Можлива також і розрахована на багато користувачів робота з однією і тією ж БД, коли кожен користувач з свого комп'ютера запускає програму, розташовану на мережевому сервері. Тоді на комп'ютері користувача запускається копія програми. По кожному запиту до БД із програми дані з таблиць БД перегоняться на комп'ютер користувача, незалежно від того, скільки реально потрібно даних для виконання запиту. Після цього виконується запит.
Кожен користувач має на своєму комп'ютері локальну копію даних, що час від часу оновлюються з реальної БД, розташованої на мережевому сервері. При цьому зміни, які кожен користувач вносить в БД, можуть бути до певного моменту невідомі іншим користувачам, що робить актуальним завдання систематичного оновлення даних на комп'ютері користувача з реальної БД. Іншим актуальним завданням є блокування записів, які змінюються одним з користувачів: це необхідно для того, щоб в цей час інший користувач не вніс змін в ті ж дані. У архітектурі "файл-сервер" вся тяжкість виконання запитів до БД, управління цілісністю БД лягає на програму користувача. БД на сервері є пасивним джерелом даних.
Кардинальних відмінностей з погляду архітектури між розрахованою на одного користувача архітектурою і архітектурою "файл-сервер" немає. І в тому і в іншому випадку як СУБД застосовуються так звані "персональні" (або "локальні") СУБД. такі як Paradox, dBase і ін. Сама база даних в цьому випадку є набір таблиць, індексних файлів, мемо-полів і ін., що зберігаються в одному каталозі на диску у вигляді окремих файлів.
Архітектура "файл-сервер" неефективна, принаймні, в двох відносинах. При виконанні запиту до бази даних, розташованої на файловому сервері, насправді відбувається запит до локальної копії даних на комп'ютері користувача. Тому перед виконанням запиту дані в локальній копії оновлюються з реальної БД. Дані оновлюються в повному об'ємі. Так, якщо таблиця БД складається з 1000 записів, а для виконання запиту (наприклад, видати суму премій за жовтень у відділі Y) реально потрібно 10 записів, все одно перегоняться всі 1000 записів. Таким чином, не потрібно мати дуже багато користувачів і запитів від них, щоб серйозно завантажити мережу, що, звичайно ж, не може не позначитися на її швидкодії.
Забезпечення цілісності БД проводиться із програми клієнта. Це потенційне джерело помилок, що порушують фізичну і логічну цілісність БД, оскільки різні програми можуть проводити контроль цілісності БД по-різному, взаємовиключними способами, або не проводити такого контролю зовсім. Набагато ефективніше управляти БД з єдиного місця і по єдиних законах, ніж з різних програм і по потенційно різних законах (все залежить від того, яке написане програмне забезпечення). Тому безпека при роботі в архітектурі "файл-сервер" невисока і завжди присутній елемент невизначеності. Секретність і конфіденційність при роботі з БД в архітектурі "файл-сервер" забезпечити також важко - будь-який, хто має доступ в каталог мережевого сервера, де зберігається БД, може змінювати таблиці БД будь-яким чином, копіювати їх, замінювати і т.д.
Архітектура "клієнт-сервер" розділяє функції програми користувача (званого клієнтом) і сервера.
Програма-клієнт формує запит до сервера, на якому розташована БД, на структурній мові запитів SQL. Видалений сервер приймає запит і переадресує його SQL-серверу БД. SQL-сервер - це спеціальна програма, що управляє видаленою базою даних. SQL-сервер забезпечує інтерпретацію запиту, його виконання в базі даних, формування результату виконання запиту і видачу його програмі-клієнту. При цьому ресурси клієнтського комп'ютера не беруть участь у фізичному виконанні запиту; клієнтський комп'ютер лише посилає запит до серверної БД і одержує результат, після чого інтерпретує його необхідним чином і представляє користувачу. Оскільки клієнтській програмі посилається результат виконання запиту, по мережі "подорожують" тільки ті дані, які необхідні клієнту. У результаті знижується навантаження на мережу. Оскільки виконання запиту відбувається там же, де зберігаються дані (на сервері), немає необхідності в пересилці великих пакетів даних. Крім того, SQL-сервер, якщо це можливо, оптимізує одержаний запит так, щоб він був виконаний в мінімальний час з найменшими накладними витратами. Все це підвищує швидкодію системи і знижує час очікування результату запиту.
При виконанні запитів сервером істотно підвищується ступінь безпеки даних, оскільки правила цілісності даних визначаються в базі даних на сервері і є єдиними для всіх програм, що використовують цю БД. Таким чином, виключається можливість визначення суперечливих правил підтримки цілісності. Могутній апарат транзакцій, підтримуваний SQL-серверами, дозволяє виключити одночасну зміну одних і тих же даних різними користувачами і надає можливість відкатів до первинних значень при внесенні в БД змін, що закінчилися аварійно. Таким чином, функціями програми-клієнта є:
· інтерпретація результатів запитів, одержаних від сервера, і представлення їх користувачу в необхідній формі;
· реалізація інтерфейсу користувача.
SQL-сервер - це програма, розташована на комп'ютері мережевого сервера. SQL-сервер повинен бути завантажений на момент надходження запиту від клієнта. Функціями сервера БД є:
· прийом запитів від програм-клієнтів, інтерпретація запитів, виконання запитів в БД, відправка результату виконання запиту програмі-клієнту;
· управління цілісністю БД, забезпечення системи безпеки, блокування невірних дій програм-клієнтів;
· зберігання бізнес-правил, часто використовуваних запитів у вже інтерпретованому вигляді;
· забезпечення одночасно безпечної і відмовостійкої, розрахованої на багато користувачів роботи з одними і тими ж даними.
У архітектурі "клієнт-сервер" використовуються так звані "видалені" (або "промислові") СУБД. Промисловими вони називаються із-за того, що саме СУБД цього класу можуть забезпечити роботу інформаційних систем масштабу середнього і крупного підприємства, організації, банку. Локальні СУБД призначені для розрахованої на одного користувача роботи або для забезпечення роботи інформаційних систем, розрахованих на невеликі групи користувачів.
До розрядку промислових СУБД належать: Oracle, Gupta, Informix, Sybase, MS SQL Server DB2, InterBase і ряд інших.
Як правило, SQL-сервер управляється окремим співробітником або групою співробітників (адміністратори SQL-сервера). Вони управляють фізичними характеристиками баз даних, проводять оптимізацію, настройку і перевизначення різних компонентів БД, створюють нові БД, змінюють ті, що існують і т.д., а також видають привілеї (дозволи на доступ певного рівня до конкретних БД, SQL-серверу) різним користувачам.
Окрім цього, існує окрема категорія співробітників, званих адміністраторами баз даних. Як правило, це адміністратори сервера, розробники БД або користувачі, що мають привілеї на створення, зміну, настройку оптимальних параметрів окремих серверних БД. Адміністратори БД також відповідають за надання прав на різнорівневий доступ до супроводжуваних ними БД для інших користувачів.
2.4 Обґрунтування вибору архітектури стосовно проектованої системи
Використання архітектури "сервер" клієнта:
· знижує складність програм-клієнтів (оскільки тим вже немає необхідності забезпечувати цілісність і безпеку БД і стежити за параметрами розрахованої на багато користувачів роботи з БД);
· знижує вимоги до апаратних засобів, на яких ці програми функціонують (тобто до комп'ютерів користувачів-клієнтів);
· підвищує надійність БД, її цілісність, безпеку і секретність.
3. ОСОБЛИВОСТІ ВИКОРИСТАННЯ МОВИ SQL ПРИ РОЗРОБЦІ ІНФОРМАЦІЙНИХ СИСТЕМ
3.1 Історія розвитку і основні концепції мови SQL
Всі мови маніпулювання даними (ММД), створені до появи реляційних баз даних і розроблені для багатьох систем управління базами даних (СУБД) персональних комп'ютерів, були орієнтовані на операції з даними, представленими у вигляді логічних записів файлів. Це вимагало від користувачів детального знання організації зберігання даних і достатніх зусиль для вказівки не тільки того, які дані потрібні, але і того, де вони розміщені і як крок за кроком одержати їх.
Непроцедурна мова SQL (Structured Query Language - структурована мова запитів), що розглядається ж нижче, орієнтована на операції з даними, представленими у вигляді логічно взаємозв'язаних сукупностей таблиць. Особливість пропозицій цієї мови полягає в тому, що вони орієнтовані більшою мірою на кінцевий результат обробки даних, чим на процедуру цієї обробки. SQL сам визначає, де знаходяться дані, які індекси і навіть які найбільш ефективні послідовності операцій слід використовувати для їх отримання: не треба указувати ці деталі в запиті до бази даних.
Для ілюстрації відмінностей між ММД розглянемо наступну ситуацію. Хай, наприклад, ми збираємося подивитися кінофільм і хочемо скористатися для поїздки в кінотеатр послугами таксі. Одному шоферу таксі досить сказати назву фільму - і він сам знайде вам кінотеатр, в якому показують потрібний фільм. (Подібним же чином, самостійно, відшукує запитані дані SQL.)
Для іншого шофера таксі нам, можливо, буде потрібно самому дізнатися, де демонструється потрібний фільм і назвати кінотеатр. Тоді водій повинен знайти адресу цього кінотеатру.
Може трапитися і так, що нам доведеться самому дізнатися адресу кінотеатру і запропонувати водію проїхати до нього по таких-то і таких-то вулицях. У найгіршому випадку нам, можливо, навіть доведеться по дорозі давати вказівки: "Повернути наліво... проїхати п'ять кварталів... повернути направо...". (Аналогічно більший або менший рівень деталізації запиту доводиться створювати користувачу в різних СУБД, що не мають мови SQL.)
Поява теорії реляційних баз даних і запропонованої Коддом мови запитів "alpha", заснованої на реляційному численні, ініціювало розробку ряду мов запитів, які можна віднести до двох класів:
Мови, алгебри, що дозволяють виражати запити засобами спеціалізованих операторів, вживаних до відносин (JOIN - з'єднати, INTERSECT - перетнути, SUBTRACT - відняти і т.д.).
Мови числення предикатів є набором правил для запису виразу, що визначає нове відношення із заданої сукупності існуючих відносин. Іншими словами числення предикатів є метод визначення того відношення, яке нам бажано одержати (як відповідь на запит) з відносин, вже наявних в базі даних.
Розробка, в основному, йшла у відділеннях фірми IBM (мови ISBL, SQL, QBE) і університетах США (PIQUE, QUEL). Останній створювався для СУБД INGRES (Interactive Graphics and Retrieval System), яка була розроблена на початку 70-х років в Університеті шт. Каліфорнія і сьогодні входить в п'ятірку кращих професійних СУБД. Сьогодні зі всіх цих мов повністю збереглися і розвиваються QBE (Query-By-Example - запит за зразком) і SQL, а з інших узяті в розширення внутрішніх мов СУБД тільки найцікавіші конструкції.
На початку 80-х років SQL "переміг" інші мови запитів і став фактичним стандартом таких мов для професійних реляційних СУБД. У 1987 році він став міжнародним стандартом мови баз даних і почав упроваджуватися у всі поширені СУБД персональних комп'ютерів. Чому ж це відбулося?
Безперервне зростання швидкодії, а також зниження енергоспоживання, розмірів і вартості комп'ютерів привели до різкого розширення можливих ринків їх збуту, круга користувачів, різноманітності типів і цін. Природно, що розширився попит на різноманітне програмне забезпечення.
Борючись за покупця, фірми, що створюють програмне забезпечення, стали випускати на ринок все більш і більш інтелектуальні і, отже, об'ємні програмні комплекси. Багато організацій і окремі користувачі часто не могли розмістити їх на власних ЕОМ, проте не хотіли і відмовлятися від нового сервісу. Для обміну інформацією і її обміну були створені мережі ЕОМ, де програми і дані стали розміщувати на спеціальних обслуговуючих пристроях - файлових серверах.
СУБД, що працюють з файловими серверами, дозволяють безлічі користувачів різних ЕОМ (іноді розташованих достатньо далеко один від одного) діставати доступ до одних і тих же баз даних. При цьому спрощується розробка різних автоматизованих систем управління організаціями, учбових комплексів, інформаційних і інших систем, де безліч співробітників повинні використовувати загальні дані і обмінюватися створюваними в процесі роботи (навчання). Проте при такій ідеології вся обробка запитів з програм або з терміналів призначених для користувача ЕОМ виконується на цих же ЕОМ. Тому для реалізації навіть простого запиту ЕОМ часто повинна прочитувати з файлового сервера і (або) записувати на сервер цілі файли, що веде до конфліктних ситуацій і перевантаження мережі.
Для виключення вказаних і деяких інших недоліків була запропонована технологія клієнт-сервер, по якій запити призначених для користувача ЕОМ (Клієнт) обробляються на спеціальних серверах баз даних (Сервер), а на ЕОМ повертаються лише результати обробки запиту. При цьому, природно, потрібна єдина мова спілкування з Сервером і як така мова вибрана SQL. Тому всі сучасні версії професійних реляційних СУБД (DB2, Oracle, Ingres, Informix, Sybase, Progress, Rdb) і навіть нереляційних СУБД (наприклад, Adabas) використовують технологію клієнт-сервер і мову SQL.
Існує думка: Оскільки велика частина запитів формулюється на SQL, практично байдуже, що це за СУБД - був би SQL.
Реалізація в SQL концепції операцій, орієнтованих на табличне представлення даних, дозволило створити компактну мову з невеликим (менше 30) набором операторів. Мова SQL може використовуватися як інтерактивна (для виконання запитів) і як вбудована (для побудови прикладних програм).
На рис. 3.1 показана схема, що відображає принцип використання SQL. Користувач передає запит інтерпретатору, який, у свою чергу, повертає уявлення, таблицю або курсор. Ці об'єкти знаходяться на так званому віртуальному рівні і формуються тільки за запитом. Але вони взаємодіють з реальним рівнем, тобто з таблицями баз даних, на основі яких відбувається формування віртуальних об'єктів. Звичайно, дане розділення є умовним, але воно добре відображає ідеологію SQL.
3.2 Структура запитів до окремих таблиць
Достатньо поширеним є завдання отримання даних з однієї або декількох таблиць і формування на їх основі яких-небудь звітів. У даному розділі будуть викладені базові поняття SQL і способи створення відповідних запитів.
Оператор SELECT є виразом, що ініціює виконання запиту. В даному вип адку запит є командою на отримання даних. Вираз SELECT має строго певний формат:
SELECT [[ALL] | DISTINCT]{ * | елемент_SELECT [.елемент _SELECT] ...}
FROM{ базова_таблиця | уявлення} [псевдонім]
[.{ базова_таблиця | уявлення} [псевдонім]]
[GROUP BY назва поля (полів) [HAVING фраза]]:

Рис. 3.1 Схема взаємодії з базою даних за допомогою SQL
Вибірку по умові реалізує оператор WHERE. Оператор є частиною виразу SELECT і служить для завдання умов відбору записів в результуючий набір. В х оді виконання запиту відбувається перевірка всіх записів на відповідність умові відбору. Як приклад можна привести досить простий запит:
SELECT State,City,Company FROM Customer
При обробці запиту був похідний відбір всіх записів, поле State яких має значення СА.
Можна провести вибірку по співпадаючих значеннях полів. Наприклад, необхідно знайти компанії, в яких телефон і факс мають один і той же номер. Умова запиту в цьому випадку буде досить простим:
SELECT Company,Phone,Fax FROM Customer
Виключення значень, що повторюються
Для отримання результатів без значень, що повторюються, використовується оператор DISTINCT. Наприклад:
SELECT DISTINCT Country FROM Customer
Автоматичне обчислення значень полів досить часто застосовується в найрізноманітніших запитах. Приклад відповідного
Розробка гнучкої системи управління інформаційними потоками магазину комп’ютерної техніки дипломная работа. Программирование, компьютеры и кибернетика.
Курсовая работа: Страхование предпринимательских рисков 2
Итоговая Контрольная Работа 5 Класс Ладыженская
Личностные Качества Способствующие Достижению Успеха Реферат
Курсовая работа: Теория социальной работы
Реферат: Государство и гражданское общество. Формы нх взаимодействия
Загальні уявлення про індуктивні фільтри
Сочинение На Любую Поговорку
Курсовая работа: Предпосылки возникновения сентиментализма в России во второй половине XVIII века
Дипломная работа по теме Информационно–аналитическое обеспечение деятельности фирмы как условие ее успешного развития
Соотношение Права И Закона Реферат
Шпаргалка: Основы бухгалтерского учета
Использование понятия полезности при принятии решений
Дипломная работа по теме Формирование логистической информационной системы организации (на материалах ОАО 'Автоагрегат')
Дипломная работа по теме Исследование эффективности лекции с использованием компьютерной презентации на примере курса 'Общей биологии' для студентов первого курса физического факультета
Реферат: The Road Not TakenTheme Essay Research Paper
Реферат: Меморандум Танаки
Сочинение по теме Карло Гоцци. Любовь к трем Апельсинам
Поляков Практическая Работа 10 Класс
Сочинение по теме О чем мечтают герой в комедии Н.В. Гоголя "Ревизор"
Статья: Використання персонального комп'ютера як засобу навчальної діяльності для підготовки творчого вчителя
Предмет и методология теории государства и права - Государство и право курсовая работа
Управление качеством - Менеджмент и трудовые отношения курс лекций
Музыкально-ритмические движения как вид музыкальной деятельности детей - Педагогика контрольная работа


Report Page