Мова sql. Загальний опис.
Мова SQL(Structure Query Language – Структурована Мова Запитів) була запропонована наприкінці 70 років компанією IBM Research і набула широкого поширення. Мова SQL дозволяє формувати запити до БД на основі невеликої кількості операторів (інструкцій).
SQL є єдиним стандартизованим засобом для роботи з реляційоними базами даних.
На даний момент розроблено три стандарти:
1)SQL1(SQL89) – застарілий стандарт.
2)SQL2(SQL92) – розширений SQL1. Використовується практично у всіх комерційних системах БД. На даний момент – основний.
3)SQL3(SQL(99) – не все реалізовано. Це якісно новий стандарт. Розрахований на об'єктні БД.
В ньому введений стандарт на події та тригери. Розширено можливості оператора відкату ROOLBACK.
Мова SQL не є традиційною мовою програмування:
1)SQL - не типізована мова;
2)SQL – непроцедурна;
3)SQL – декларативна.
Декларативна мова - можна вказати, що потрібно одержати в результаті запиту, але не можна написати, як це зробити, бо не можна описати саму процедуру виконання запиту. Реалізація алгоритму виконання операторів SQL серверами баз даних може бути закрита.
SQL не має основних операторів, керуючих виконанням програми: логічного(if), циклів(for), переходу і цілого ряду інших.
Оператори SQL можна вбудовувати в традиційні мови програмування.
У випадку таблиць dBase чи Paradox реалізацію SQL бере на себе бібліотека Borland Database Engine.
До числа достоїнств SQL можна віднести:
1)незалежність від конкретних СУБД;
2)міжплатформена переносимість;
3)наявність стандартів;
4)підтримка архітектури клієнт-сервер.
Мова SQL використовується для:
1)Організації даних- структури представлення даних, а також організації відношень між елементами БД(таблицями);
2)Вибірка даних;
3)Обробка даних – зміна, додавання або видалення даних;
4)Керування доступом –можна обмежити можливість для доступу визначеним користувачам до вибірки і зміни даних;
5)Спільне використання даних, робота декількох користувачів паралельно з одними і тими ж даними;
6)Підтримка цілісності даних.
Мова SQL у даний час має близько 40 інструкцій (операторів).
Їх можна розбити на групи:
Визначення даних – DDL(Data Definition Language).
Дозволяє створити, змінити або видалити(Create,Alter, Drop):
а)таблицю(Table);
б)представлення(View);
в) індекс(тільки створити і видалити)(Index);
Усього - 8 операторів.
Оператори маніпулювання даними –DML(Data Manipulation Language)
Delete – видалити рядок з таблиці;
Insert – вставити рядок у таблицю;
Update - змінити рядок у таблиці;
Усього - 3 оператора.
Мова запитів DQL(Data Query Language)
Select - вибрати рядка. Основний оператор SQL.
Усього - 1 оператор.
Керування транзакціями
Commit - завершити транзакцію;
Rollback – відкотити транзакцію;
Savepoint – зберегти проміжну точку транзакції;
Усього - 3 оператора.
Засобу адміністрування даних. Дозволяє створити, видалити, змінити базу даних, створити, видалити область зберігання. Також дозволяє маніпулювати правами доступу до БД і окремих операцій.
Усього - 9 операторів.
6) Програмний SQL. Дозволяє працювати з курсорами:визначити, відкрити закрити, считати рядок з множини рядків, визначених курсором. Також можна підготувати оператор SQL до динамічного виконання і виконати його.
Усього - 6 операторів.