Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Створення та модифікація об.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
171.01 Кб
Скачать

3 Структурована мова запитів (sql)

Основна ідея інформаційних технологій базується на концепції організації даних в БД із метою адекватного відображення ре­аль­ного світу і задоволення інформаційних потреб користувачів. БД створюються і фун­­к­ціонують під керуванням СКБД. Збіль­шен­­­­ня обсягу і структурної складності даних, розширення кола користувачів інформа­ційних систем призвели до поширення зручних реляційних СКБД. Поява теорії реля­цій­них БД ініціювало розробку ряду мов запитів, з яких збереглися і розвиваються ли­ше QBE4[4] і SQL5[5] (ця абревіатура вимовляється як "сиквел" чи „эс-ку-эль") . Для забезпечення одночасного доступу до даних багатьох користу­вачів, нерідко розташованих до­сить далеко один від одного і від місця розташування БД, створені розподілені багатокористувацькі СКБД. Спільна робота користувачів у мережах можлива тільки при наявності стандартної мови маніпулювання даними. Такою мовою стала розроб­лена у 1974 році фірмою ІBM непроцедурна мова SQL. Особливість команд цієї мови полягає у тому, що вони орієнтовані на кінцевий результат обробки даних, а не на процедуру цієї обробки. SQL сама визначає, де знаходяться дані, які індекси і навіть найбільш ефективні послідовності операцій варто використовувати для їхнього одержання: не треба вказувати ці деталі у запиті до БД. У 1987 році SQL стала міжнародним стандартом мови реляційних СКБД. У поточний час ведеться робота по підготовці нового стандарту SQL - 4GL, що повинний включати елементи об’єктно-орієнтованого доступу до даних, може організовувати цикли, умовні пропозиції, меню, екранні форми, складні запити до БД з віконним графічним інтерфейсом (X-Wіndows, MS Wіndows).

SQL виконує декілька функцій (рисунок 1):

  • SQL – інтерактивна мова запитів. Користувачі можуть вводити команди SQL в інтерактивних програмах, призначених для читання даних та їх відображення на екрані.

  • SQL – мова програмування БД. Щоб отримати доступ до БД, програмісти вставляють у програми команди SQL. Ця методика також використовується у службових програмах БД (генераторах звітів та інструментах введення даних).

  • SQL – мова адміністрування БД. Адміністратор БД використовує SQL для визначення структури БД і керування доступом до даних.

  • SQL – мова створення прикладень клієнт-сервер для організації зв’язку через локальну мережу з сервером БД до спільно використовуваних даних БД.

  • SQL – мова розподілених БД (РБД). У системах керування РБД SQL дозволяє розподілити дані серед декількох взаємодіючих обчислювальних систем. Програмне забезпечення кожної системи за допомогою SQL зв’язується з іншими системами, посилаючи їм запити на доступ до даних.

  • SQL – мова організації шлюзів БД. В обчислювальних системах із різноманітними СКБД SQL використовується у шлюзовій програмі, яка дозволяє СКБД одного типу зв’язуватися з СКБД іншого типу.

 

Рисунок 1

 

У SQL визначені дві підмножини мови:

  • SQL-DDL (Data Defіnіtіon Language) - мова визначення структур і обмежень цілісності БД. Сюди відносяться команди створення й видалення БД; створення, зміни і видалення таблиць; керування користувачами і т.і.

  • SQL-DML (Data Manіpulatіon Language) - мова маніпулювання даними: додавання, зміна, видалення і витяг даних, керування транзакціями.

Таким чином, у SQL існують:

  • команди визначення даних (визначення БД, а також визначення і знищення таблиць і індексів);

  • запити на вибір даних;

  • команди модифікації даних (додавання, видалення і зміна даних);

  • команди керування даними (надання і скасування привілеїв на доступ до даних, керування транзакціями та ін.).

Крім того, SQL надає можливість виконувати у цих пропозиціях:

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

  • упорядкування рядків і стовпців при виведенні вмісту таблиць;

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

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

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