доступом. За допомогою SQL можна обмежити можливості користувача по читанню і зміні даних і захистити їх від несанкціонованого доступу.*
Сумісне використовування даних. SQL координує сумісне використовування даних користувачами, що працюють паралель, щоб
вони не заважали один одному. * Цілісність даних. SQL дозволяє забезпечити цілісність бази даних,
захищаючи її від руйнування неузгоджено через зміни або відмову
системи.
Таким чином, SQL є достатньо могутнім Моваом для взаємодії з СУБД.
По-друге, SQL — це не повноцінний комп'ютерний Мова типа COBOL, FORTRAN або 3. В SQL немає оператора IF для перевірки умов, немає оператора GOTO для організації переходів і немає операторів DO або FOR для створення циклів. SQL є підмовою баз даних, в який входить близько тридцяти операторів, призначених для управління базами даних. Оператори SQL вбудовуються в базовий Мова, наприклад COBOL, FORTRAN або 3, і дають можливість діставати доступ до баз даних. Крім того, з такого Моваа, як 3, оператори SQL можна посилати СУБД в явному вигляді, використовуючи інтерфейс викликів функцій.
Нарешті, SQL — це слабо структурований Мова, особливо в порівнянні з такими сильно структурованими Моваами, як 3 або Pascal. Оператори SQL нагадують англійські пропозиції і містять "слова-пустушки", що не впливають на значення оператора, але полегшуючі його читання. В SQL майже немає нелогічностей, до того ж є ряд спеціальних правил, що запобігають створенню операторів SQL, які виглядають як абсолютно правильні, але не мають сенсу.
Не дивлячись на не зовсім точну назву, SQL на сьогоднішній день є єдиним стандартним Моваом для роботи з реляційними базами даних. SQL — це достатньо могутній і в той же час відносно легкий для вивчення Мова.
2.2 Роль SQL
Сам по собі SQL не є ні системою управління базами даних, ні окремим
програмним продуктом. Не можна піти в комп'ютерний магазин і "купити SQL". SQL — це невід'ємна частина СУБД, інструмент, за допомогою якого здійснюється зв'язок користувача з нею. На мал. 2.2. зображена структурна
схема типової СУБД, компоненти якої з'єднуються в єдине ціле за допомогою SQL (свого роду "клею").
Ядро бази даних є серцевиною СУБД; воно відповідає за фізичну структуризацію і запис даних на диск, а також за фізичне читання даних з диска. Крім того, воно приймає SQL-запити від інших компонентів СУБД (таких як генератор форм, генератор звітів або модуль формування інтерактивних запитів), від призначених для користувача додатків і навіть від інших обчислювальних систем. Як видно з малюнка, SQL виконує багато різних функцій: * SQL — інтерактивний Мова запитів. Користувачі вводять команди SQL в
Рис. 2.2. Компоненти типичной СУБД
інтерактивні програми, призначені для читання даних і відображення їх на екрані. Це зручний спосіб виконання спеціальних запитів. * SQL — мова програмування баз даних. Щоб дістати доступ до бази даних,
програмісти вставляють в свої програми команди SQL. Ця методика використовується як в програмах, написаних користувачами, так і в службових програмах баз даних (таких як генератори звітів і інструменти введення даних).*
SQL — Мова адміністрування баз даних. Адміністратор бази даних, що знаходиться на міні-комп'ютері або на великій ЕОМ, використовує SQL для визначення структури бази даних і управління доступом до даних.*
SQL — Мова створення додатків клієнт/сервер, І програмах для персональних комп'ютерів SQL використовується для організації зв'язку через локальну мережу з сервером бази даних, в якій зберігаються дані, що спільно використовуються. В більшості нових додатків використовується архітектура клієнт/сервер, яка дозволяє звести до мінімуму мережний трафік і підвищити швидкодію як персональних комп'ютерів, так і серверів баз даних.*
SQL — Мова розподілених баз даних. В системах управління розподіленими базами даних SQL допомагає розподіляти дані серед декількох взаємодіючих обчислювальних систем. Програмне забезпечення кожної системи за допомогою використовування SQL зв'язується з іншими системами, посилаючи їм запити на доступ до даних.*
SQL — Мова шлюзів бази даних. В обчислювальних мережах з різними СУБД SQL часто використовується в шлюзовій програмі, яка дозволяє СУБД одного типу зв'язуватися з СУБД іншого типу. Таким чином, SQL перетворився на корисний і могутній інструмент, що
забезпечує людям, програмам і обчислювальним системам доступ до
інформації, що міститься в реляційних базах даних.
23 Переваги SQL
SQL — це легкий для розуміння Мова і в той же час універсальний
програмний засіб управління даними.
Успіх Мовау SQL принесли наступні його особливості:*
незалежність від конкретних СУБД;*
переносимість з однієї обчислювальної системи на іншу;*
наявність стандартів;*
схвалення компанією IBM (СУБД DB2);*
підтримка з боку компанії Microsoft (протокол ODBC);*
реляційна основа;*
високорівнева структура, що нагадує англійську мову;*
можливість виконання спеціальних інтерактивних запитів:*
забезпечення програмного доступу до баз даних;*
можливість різного представлення даних;*
повноцінність як Моваа, призначеного для роботи з базами даних;*
можливість динамічного визначення даних;*
підтримка архітектури клієнт/сервер.
Всі перераховані вище чинники з'явилися причиною того, що SQL став стандартним інструментом для управління даними на персональних комп'ютерах, міні-комп'ютерах і великих ЕОМ. Нижче ці чинники розглянуті більш детально.
2.4 Незалежність від конкретних СУБД
Всі провідні постачальники СУБД використовують SQL, і жодна нова СУБД, не підтримуюча SQL, не може розраховувати на успіх. Реляційну базу даних і програми, які з нею працюють, можна перенести з однією СУБД на іншу з мінімальними доробками і перепідготовкою персоналу. Програмні засоби, що входять до складу СУБД для персональних комп'ютерів, такі як програми для створення запитів, генератори звітів і генератори додатків, працюють з реляційними базами даних багатьох типів. Таким чином, SQL забезпечує незалежність від конкретних СУБД, що є однією з найважливіших причин його популярності.
2.5 Переносимість з однієї