
- •Тема 1. Програмне забезпечення системного оброблення інформації План
- •Системне програмне забезпечення.
- •Розвиток мов програмування.
- •Операційна система.
- •1 Системне програмне забезпечення
- •2 Розвиток мов програмування
- •Тема 2. Засоби створення програмних додатків
- •Тема 3. Структурована мова запитів sql для реляційних бд
- •Команда select
- •Видалення надмірних даних
- •1. Компоненти скбд.
- •2. Стандарт sql.
- •3. Команда select
- •4. Видалення надмірних даних
- •2. Перенесення додатку на інший комп'ютер.
- •Типи даних
- •3. Представлення значень у комп’ютері.
- •1. Умовні оператори Оператор if
- •Оператор switch
- •Оператор break
- •Оператор continue
- •Оператор повернення
- •Оператор goto
- •Помічений оператор
- •Порожній оператор
- •1. Структури.
- •Тема 9. Вступ до проблеми штучного інтелекту
- •Тема 10. Експертні системи як різновид систем штучного інтелекту
- •Тема 11. Методологія проектування експертних систем
- •1. Етипи проектування експертних систем.
Тема 3. Структурована мова запитів sql для реляційних бд
План
Компоненти СКБД
Стандарт SQL.
Команда select
Видалення надмірних даних
1. Компоненти скбд.
До найбільш важливих компонентів системи управління базами даних належать менеджер зберігання даних, процесор запитів і менеджер транзакцій.
Менеджер зберігання даних — компонент СКБД, відповідальний за розміщення і зберігання на диску основної інформації бази даних, метаданих (відомостей про схему, або логічну структуру, дані), індексів (структур, прискорюючих доступ до інформації) і протоколів (записів, що фіксують зміни в базі даних). Найважливішою частиною підсистеми зберігання даних є менеджер буферів, що забезпечує перенесення порцій дискової інформації в буфери оперативної пам'яті і назад.
Процесор запитів — елемент СКБД, що здійснює лексичний і семантичний розбір запиту, його оптимізацію, вибір відповідного плану запиту і подальше виконання плану стосовно реальних даних.
Менеджер транзакцій — частина СКБД, що реалізовує функції ведення протоколу змін з метою забезпечення можливості відновлення даних після збоїв системи, а також що управляє процесами перебігу паралельних транзакцій і атомарність (транзакція виконується або цілком і до кінця, або не виконується зовсім), що гарантує їх, і ізольованість (кожна транзакція обслуговується таким чином, немов інших конкуруючих транзакцій не існує).
Функціональні можливості систем керування базами даних ( СКБД ):
1. Засоби постійного зберігання даних. СКБД, подібно до файлових систем, підтримують можливості зберігання надзвичайно великих фрагментів даних, які існують незалежно від яких би то не було процесів їх використання. СКБД, проте, значно перевершують файлові системи відносно гнучкості представлення інформації, пропонуючи структури, що забезпечують ефективний доступ до великих порцій даних.
2. Інтерфейс програмування. СУБД дозволяє користувачеві або прикладній програмі звертатися до даним і змінювати їх за допомогою команд розвиненої мови запитів. Переваги СУБД порівняно з файловими системами виявляються і в тому, що перші дають можливість маніпулювати даними найрізноманітнішими способами, набагато гнучкішими, ніж звичайні операції читання і запису файлів.
3. Управління транзакціями. СУБД підтримують паралельний доступ до даним, тобто можливість одноразового звернення до одного і тогої ж потоку даних з боку декількох різних процесів, названих транзакціями (transactions). Щоб уникнути деяких небажаних наслідків подібного звернення, СУБД реалізують механізми :
Забезпечення ізольованості (isolation) транзакцій (транзакції виконуються незалежно одна від одної, неначебто вони активізувалися строго послідовно).
Атомарності (atomicity) (кожна транзакція або виконується цілком, або не виконується зовсім).
Стійкості (durability) (системи містять засоби надійного збереження результатів виконання транзакцій і самовідновлення після різного роду помилок і збоїв) .
2. Стандарт sql.
SQL (вимовляється зазвичай "СЕКВЕЛ", "ЕСКЮЕЛЬ" ) означає Структуровану Мову Запитів.
Це мова, яка дає можливість створювати реляційні бази даних (і працювати з ними), які є наборами зв'язаної інформації, що зберігається в таблицях.
Стандарт SQL визначається ANSI (Американським Національним Інститутом Стандартів) і зараз також приймається ISO (Міжнародною організацією по стандартизації). Проте більшість комерційних програм БД розширюють SQL без повідомлення ANSI, додаючи різні особливості в цю мову, які, як вони вважають, будуть вельми корисні.
Реляційна база даних це тіло зв'язаної інформації, що зберігається в двомірних таблицях. Це нагадує адресну або телефонну книгу.
Є два SQL: Інтерактивний і Вкладений. Переважно обидві форми працюють однаково, але використовуються різно.
Інтерактивний SQL використовується для функціонування безпосередньо в базі даних, щоб проводити вивід для використання його замовником. У цьому SQL - коли ви введете команду, вона зараз же виконається, і ви зможете відразу побачити вивід (якщо він взагалі вийде).
Вкладений SQL складається з команд SQL, поміщених усередині програм, які зазвичай написані на іншій мові (типу Коболу або Паскаля). Це робить такі програми могутнішими і ефективним.
Проте, допускаючи ці мови, доводиться мати справу із структурою SQL і стилем управління даних, який вимагає деяких розширень інтерактивного SQL. Передача SQL-команд у вкладений SQL є такою, що пропускається ("passed off") для змінних або параметрів, використовуваних програмою, в яку вони були вкладені.
І у інтерактивній, і у вкладеній формах SQL є численні частини, або підрозділи. Оскільки ви, ймовірно, зіткнетеся з цією термінологією при читанні SQL, ми дамо деякі пояснення. На жаль, ці терміни не використовуються повсюдно у всіх реалізаціях. Вони вказані ANSI і корисні на концептуальному рівні, але більшість SQL-программ практично не обробляють їх окремо, так що вони, по суті, стають функціональними категоріями команд SQL.
DDL (Мова Визначення Даних) - так звана Мова Опису Схеми в ANSI - складається з команд, які створюють об'єкти (таблиці, індекси, перегляди і так далі) в базі даних.
DML (Мова Маніпулювання Даними) це набір команд, які визначають, які значення представлені в таблицях у будь-який момент часу.
DCD (Мова Управління Даними) складається із засобів, які визначають, чи дозволити користувачеві виконувати певні дії, чи ні. Вони є складовими частинами DDL в ANSI.
Не забувайте ці назви. Це не різні мови, а розділи команд SQL, згруповані по їх функціях.
SQL це Структурована Мова Запитів. Запити, ймовірно, найбільш часто використовуваний аспект SQL. Фактично маловірогідно, для категорії SQL-користувачів, щоб ця мова використовувалася для чогось іншого.
Запит це команда, яку ви даєте вашій програмі бази даних і яка повідомляє її, що потрібно вивести певну інформацію з таблиць в пам'ять. Ця інформація зазвичай посилається безпосередньо на екран комп'ютера або терміналу, яким ви користуєтеся, хоча в більшості випадків її можна також послати на принтер, зберегти у файлі (як об'єкт в пам'яті комп'ютера) або надати як ввідну інформацію для іншої команди або процесу.
Запити зазвичай розглядаються як частина мови DML. Проте, оскільки запит не міняє інформацію в таблицях, а просто показує її користувачеві, ми розглядатимемо запити як самостійну категорію серед команд DML, які проводять дії, а не просто показують зміст бази даних (БД).
Будь-який запит SQL має в своєму складі одну команду. Структура цієї команди брехливо проста, тому що ви можете розширювати її так, щоб виконати складні оцінки і обробку даних. Ця команда називається SELECT (ВИБРАТИ).
Типи даних
У SQL використовуються наступні основні типи даних, формати яких можуть декілька розрізнятися для різних СКБД:
Тип даних |
Опис |
NUMBER(p,s) |
Числове значення, максимальна кількість цифр в якому рівна "р", а кількість десяткових знаків -"s". |
INTEGER |
Ціле число (звичайні до 7 значущих цифр і знаку). Аналог NUMBER(7). |
Varchar(s) |
Символьний рядок змінної довжини, максимальний розмір якої рівний "s". |
DATE |
Значення дати і часу між 1 січня 4712 р. до наший ери і 31 грудня 4712 р. наший ери. |
CHAR(s) |
Символьне значення постійної довжини "s". |
LONG |
Символьні значення змінної довжини розміром до 2гб |
RAW і LONG RAW |
Еквіваленти Varchar і LONG для двійкових даних. |
У деяких СКБД ще існує тип даних LOGICAL, DOUBLE і ряд інших. Деякі СУБД надають користувачеві можливість самостійного визначення нових типів даних, наприклад, площинні або просторові координати, одиниці різних метрик.