Мовні та програмні засоби субд. Функції мовних засобів субд

БД - сов-ть взаємозв'язок. та структурирів. даних на машиночитаних носіях. Поводження з інформацією БД проводиться за допомогою ЕОМ.

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

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

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

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

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

основ. Функції СУБД:

1) створення баз даних на комп'ютері

2) введення, накопичення, перегляд та модифік. даних

3) відповіді на запити за даними

4) складання звітів,

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

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

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

Для введення в базу опис предметної області має бути представлений у термінах спеціальної мови опису даних (ЯОД), що входить до комплексу засобів СУБД. ЯОД поділяє дані на типи.


Типи даних.

Для введення в базу опис предметної області має бути представлений у термінах спеціальної мови опису даних (ЯОД), що входить до комплексу засобів СУБД. ЯОД поділяє дані на такі типи.

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

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

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


5.Реляційні бази даних.

РТ -БД, в кіт. всі данні, доступні користувачеві, організовані як зв'язок. Таблиць, проте операції над даними зводяться до операцій над цими таблицями.

Опр-ся 12 правил Кодда.

правило 0: Основне правило (Foundation Rule): Реляційна СУБД має бути здатна повністю керувати базою даних, використовуючи зв'язки між даними.

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

правило 1: Явне подання даних (The Information Rule):

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

правило 2: Гарантований доступ до даних (Guaranteed Access Rule):

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

правило 3: Повна обробка невідомих значень (Systematic Treatment of Null Values):

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

правило 4: Доступ до словника даних у термінах реляційної моделі(Active On-Line Catalog Базований на Relational Model):

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

правило 5: Повнота підмножини мови (Comprehensive Data Sublanguage Rule):

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

(а) має лінійний синтаксис,

(б) може використовуватися як інтерактивно, так і в прикладних програмах,

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

правило 6: Можливість модифікації уявлень (View Updating Rule):

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

правило 7: Наявність високорівневих операцій управління даними (High-Level Insert, Update, and Delete):

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

правило 8: Фізична незалежність даних (Physical Data Independence):

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

правило 9: Логічна незалежність даних (Logical Data Independence):

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

правило 10: Незалежність контролю цілісності (Integrity Independence):

Вся інформація, необхідна підтримки цілісності, має бути у словнику даних. Мова для роботи з даними повинна перевіряти вхідні дані та автоматично підтримувати цілісність даних.

правило 11: Дистрибутивна незалежність (Distribution Independence):

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

правило 12: Узгодження мовних рівнів (The Nonsubversion Rule):

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


6. SQL – стандартна мова для роботи з базами даних

Для обробки та читання даних, що містяться в комп'ютерній базі даних викон. SQL - це скорочена назва структурованої мовизапитів (Structured Query Language). З історичних причин абревіатура SQL читається зазвичай як «сіквел», але ісп-ся і альтернативне вимовляння. - «Ескюел»

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

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

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

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

Читання даних. SQL дасть користувачеві або додатку можливість читати дані, що містяться в базі, і користуватися ними.

Обробка даних. З допомогою SQL можна змінювати вміст бази даних, тобто. додавати а до неї нові, а також видаляти або оновлювати вже наявні дані.

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

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

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

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


7. Система ACCESS.

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

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

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

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

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

Мова визначення даних (ЯОД).

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

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

Синтаксис команди створення таблиці:

CREATE TABLE имя_таблицы(

поле1 тип1 [обмеження],

[поле2 тип2 [обмеження], …]);

Можливі обмеження у таблицях:

  • * NOT NULL - значення атрибуту має бути визначено (опція NOT NULL);
  • * UNIQUE – значення атрибутів є унікальними (унікальний ключ);
  • * PRIMARY KEY - атрибут є первинним ключем (первинний ключ);
  • * CHECK - визначає умова, якій повинні задовольняти значення атрибуту (домен);
  • * DEFAULT – присвоєння значень «за умовчанням» для атрибутів.

Наприклад:

CREATE TABLE Dealers1(

Name VARCHAR2(30),

Procent NUMBER(4,2),

Comments VARCHAR2(50) DEFAULT `no comments');

Мова визначення даних (DDL - Data Definition Language) надає користувачам засоби вказівки типу даних та їх структури, а також засоби завдання обмежень інформації, що зберігається в базі даних.

Оператори: CREATE, ALTER (см 14), DROP.

Для роботи з базами даних використовуються спеціальні мови. мовами баз даних. У ранніх СУБД підтримувалося кілька спеціалізованих за своїми функціями мов. Найчастіше виділялися дві мови. мова визначення схемиБД (SDL - Schema Definition Language)і мова маніпулювання даними (DML – Data Manipulation Language). SDL служив головним чином для визначення логічної структуриБД, тобто. тієї структури БД, якою вона представляється користувачам. DML містив набір операторів маніпулювання даними, тобто. операторів, що дозволяють заносити дані до БД, видаляти, модифікувати чи вибирати існуючі дані. Ми розглянемо докладніше мови ранніх СУБД у наступній лекції.

У сучасних СУБДзазвичай підтримується єдина інтегрована мова, що містить усі необхідні коштидля роботи з БД, починаючи від її створення, та забезпечує базовий користувальницький інтерфейсіз базами даних. Стандартною мовоюнайпоширеніших в даний час реляційних СУБДє мова SQL (Structured Query Language). У кількох лекціях цього курсу мова SQL буде розглядатися досить докладно, а поки що ми перерахуємо основні функції реляційної СУБД, що підтримуються на "мовному" рівні (тобто функції, що підтримуються під час реалізації інтерфейсу SQL).

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

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

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

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

Більш точно, до функцій СУБД прийнято відносити такі:

1. Безпосереднє управлінняданими у зовнішній пам'яті

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

2. Управління буферами оперативної пам'яті

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

Зауважимо, що існує окремий напрямок СУБД, який орієнтований на постійну присутність в оперативній пам'яті всієї БД. Цей напрямок ґрунтується на припущенні, що в майбутньому обсяг оперативної пам'яті комп'ютерів буде настільки великим, що дозволить не перейматися буферизацією. Поки що ці роботи перебувають у стадії досліджень.

3. Управління транзакціями

Транзакція - це послідовність операцій над БД, що розглядаються СУБД як єдине ціле.

Або транзакція успішно виконується, і СУБД фіксує зміни БД, зроблені цією транзакцією, у зовнішній пам'яті, або жодна з змін ніяк не відбивається на стані БД.

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

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

4. Журналізація

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

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

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

У всіх випадках дотримуються стратегії "запобіжного" запису в журнал (так званого протоколу Write Ahead Log - WAL). Грубо кажучи, ця стратегія полягає в тому, що запис про зміну будь-якого об'єкта БД має потрапити в зовнішню пам'ятьжурналу раніше, ніж змінений об'єкт потрапить у зовнішню пам'ять основної частини БД. Відомо, що у СУБД коректно дотримується протокол WAL, то з допомогою журналу можна вирішити проблеми відновлення БД після будь-якого збою.

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

5. Підтримка мов БД

p align="justify"> Для роботи з базами даних використовуються спеціальні мови, в цілому звані мовами баз даних. У ранніх СУБД підтримувалося кілька спеціалізованих за своїми функціями мов. Найчастіше виділялися дві мови

  • мова визначення схеми БД(SDL - Schema Definition Language) та
  • мова маніпулювання даними(DML - Data Manipulation Language).

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

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

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

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

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

Функціональні можливості СУБД

За рівнем універсальності розрізняють два класи СУБД:

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

Ринок програмного забезпеченняПК має в своєму розпорядженні більшим числомрізноманітних за своїми функціональним можливостямкомерційних систем СУБД загального призначення

СУБД – лідери на ринку програм:

  • dBASE IV, компанії Borland International;
  • Microsoft Access 2007;
  • Microsoft FoxPro 2.6 for DOS;
  • Microsoft FoxPro for Windows, Microsoft Corp:
  • Paradox for DOS 4.5:
  • Paradox for Windows, версія 4.5 Borland.

ПродуктивністьСУБД оцінюється:

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

на продуктивністьСУБД впливають 2 фактори:

  • правильне проектування
  • побудови БД.

СУБД - це сукупність мовних та програмних засобів, призначених для створення, ведення та спільного використання БД багатьма користувачами. Функції СУБД – це опис даних, маніпулювання даними, їх використання. Дані функції реалізуються завдяки наявності у СУБД мови опису даних (ЯОД), мови маніпулювання даними (ЯМД) та мови запитів.

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

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

Мова запитівзабезпечує доступ до даних та вилучення їх за запитами користувачів.

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

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

Часто користувачеві потрібна складніша аналітична обробка даних бази, що не досягається через систему меню СУБД. І тут доводиться розробляти прикладні програми. Для створення СУБД мають вбудований мова програмування.

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

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

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

16. Архітектура субд. Кошти проектування, підсистема обробки, ядро ​​субд.

Функції СУБД: 1) визначення даних (визначення структури даних, їх типу, зв'язків між даними та інші питання); 2) обробки даних (сортування, фільтрація, обчислення, угруповання тощо); 3) управління даними (організація захисту, відновлення у разі пошкодження, забезпечення цілісності даних.).

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

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

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

4.Процедури, до яких відносять реєстрацію до СУБД; використання окремого інструменту СУБД чи додатку; запуск та зупинка СУБД; створення резервних копійСУБД; обробка збоїв апаратного та програмного забезпечення.

5. Користувачі: клієнти БД, адміністратор БД, прикладні програмісти.

Сучасні СУБД розрізняються за своїми характеристиками та виконуваними ними функцій. Однак практично у всіх їх можна виділити три компоненти: 1) підсистема засобів проектування; 2) підсистема засобів обробки; 3) ядро ​​СУБД.

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

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

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