- •4 База даних Борей 56
- •1 Введення в sql
- •1 Що таке sql і що вона уміє
- •2 Чого sql не вміє
- •3 Коротка історія sql
- •3.1 Рання історія
- •3.2 Стандарти
- •3.3 Сучасний стан справ
- •5 Термінологія
- •4 Версії sql
- •6 Процедурні й декларативні мови
- •6.1 Мови й поїздка в таксі
- •6.2 Порівняння процедурних і декларативних мов
- •7 Місце sql у центрі даних
- •7.1 Де взяти sql?
- •8 Зовнішній інтерфейс на прикладі Access
- •9 Прикладні частини
- •9.2 Скбд для настільних систем
- •10 Установка з’єднання
- •11 Типова конфігурація використання sql
- •12 Роль людини в скбд
- •13 Коли застосовувати sql
- •13.1 Нарощення
- •13.2 Швидкість
- •13.4 Універсальність
- •13.5 Аналітичні можливості
- •14 У яких випадках скбд із підтримкою sql не потрібна
- •Висновки
- •2 Підготовка до роботи з sql
- •1 База даних Борей
- •2 Прикладні частини
- •2.3 Установка Microsoft sql Server
- •2.4 Імпортування Борей в sql Server
- •2.5 Запити й вивчення sql в Access
- •3 Аналізатор запитів
- •Висновки
- •3 Введення в реляційні бази даних
- •1 Складові додатки, призначені для роботи з даними
- •2 Що таке база даних
- •2.1 Демонстраційний проект – тюльпанний бізнес
- •2.2 Таблиці
- •2.3 Записи
- •2.4 Стовпці (поля)
- •2.5 Демонстраційний проект та його проблеми
- •2.6 Реляційні бази даних
- •2.7 Чи позбулися ми проблем?
- •3 Зіставлення записів – роль ключів
- •3.1 Первинні ключі
- •3.2 Зовнішні ключі
- •3.3 Як діють ключі
- •4 Альтернативний спосіб опису відношень
- •4.1 Один-багато
- •4.2 Один-один
- •4.3 Нормалізація
- •4.4 Що таке null
- •4.5 Де ж у цій теорії місце sql-операторам?
- •5 Порівняння термінології sql й інших систем
- •5.1 Паперові документи
- •5.2 Електронні таблиці
- •5.3 Настільні системи скбд (на прикладі Access)
- •Висновки
- •4 База даних Борей
- •1 Відкриття бази даних Борей
- •2 Схема бази даних
- •2.1 Що таке схема
- •2.2 У чому важливість схеми
- •3 Схема бази даних Борей
- •3.1 Таблиці й відношення бази даних Борей
- •3.2 Вікно відношень в Access
- •3.3 Процес розміщення замовлення
- •3.4 Запити Access в Борей
- •Висновки
- •5 Синтаксис sql й оператор select
- •1 Загальний синтаксис sql
- •1.1 Пробіли
- •1.2 Лапки й спеціальні символи
- •2 Оператор select
- •2.1 Основний синтаксис
- •2.2 Визначення полів
- •3 Фільтрація даних
- •3 Бабкина Ольга
- •4 Воронова Дарья
- •9 Ясенева Инна
- •3.1 Значення null
- •3.2 Обчислення в умові where
- •3.3 Інтервали
- •3.4 Додавання логічних операцій в умову where
- •3.5 Операція like
- •4 Сортування записів
- •Висновки
- •Література
3 Коротка історія sql
У цій темі ми хочемо звернути увагу читача на глибину й, одночасно, простір застосування SQL. Глибина означає реалізацію на множини рівнів взаємодії з базами даних – від звичайного списку форми Access до обміну величезними обсягами даних між мейнфреймами – простір забезпечується використанням SQL для комунікацій майже всіма СКБД. Настільки широке визнання з’явилося, не в останню чергу, в наслідок зусиль, витрачених на розробку теорії й стандартів.
3.1 Рання історія
Батьком реляційних баз даних і SQL став д-р Е. Ф. Кодд (Dr. E. F. Codd), відомий також як Тед, що працював на IBM. Після опису Коддом в 1970 р. реляційної моделі баз даних IBM витратила чимало часу й засобів на пошуки способу реалізації його ідей. В 1978 р. IBM випустила на ринок продукт, що носив назву System/R.
Однак перш ніж IBM виявилася готова до випуску System/R, на ринку з’явилися реляційні СКБД інших компаній. Першою із цих СКБД виявилася Oracle компанії Relational Software, другою – Ingres компанії Relational Technology. Після цього IBM в 1982 р. випустила вдосконалені системи SQL/DS й DB2. Oracle (тепер – від Oracle Inc.) і DB2 виробляються як і раніше (уже бог знає в якому поколінні), технологія ж Ingres була перекуплена компанією Computer Associates.
3.2 Стандарти
Як було сказано на самому початку, SQL – це стандартна відкрита мова, що не є об’єктом корпоративного правоволодіння. Її комерційному успіху сприяло утворення Національним інститутом стандартизації США й Міжнародною організацією по стандартизації в 1986 й 1987 р. комітетів зі стандартизації SQL. Двома роками пізніше була опублікована специфікація, відома як SQL-89. Після її вдосконалення й розширення (до, приблизно, 600 стор.) світу представили стандарт SQL-92. У цей час ми маємо стандарт третього покоління – SQL-99. Наявність стандартів істотно сприяє загальній популярності SQL.
Що таке ANSI? Національний Інститут Стандартизації США (American National Standards Institute) займається адмініструванням і координацією добровільних програм стандартизації для приватного сектору США. Приблизно 80 років тому група науково-технічних товариств й урядових організацій утворила інститут, покликаний поліпшити «якість життя шляхом узгодження й добровільного прийняття стандартів». У цей час Інститут представляє інтереси приблизно 1000 компаній, організацій й урядових закладів. Сам Інститут не займається розробкою стандартів, але сприяє їхній розробці, організує спільну роботу груп фахівців.
3.3 Сучасний стан справ
Отже, за роки свого існування група ANSI-SQL опублікувала три стандарти:
SQL89 (SQL1);
SQL92 (SQL2);
SQL99 (SQL3).
SQL2012
Зазначені модифікації торкнулися лише незначної частини мови, і це, безумовно, потрібно віднести до його достоїнств, оскільки і на цей час зберігається можливість використання майже всього, що написано ще в стандарті 1989 р. Іншими словами, тому, хто приступає до вивчення SQL, не доводиться починати на голому місці – код, накопичений за останні роки, буде гарною основу як для вивчення, так і для написання нових кодів.
Більшість СКБД створені відповідно стандарту SQL92. Майже весь матеріал цієї посібника був реалізований уже в ранніх стандартах. Багато розвинених засобів дотепер не реалізовані в сучасних СКБД, тому потреба в новому стандарті відчувалася не занадто сильно. Проте був виданий стандарт SQL99 зі специфікаціями розвинених засобів SQL. При цьому всі головні SQL-функції – запис, читання й модифікація даних – залишилися колишніми, тому новий стандарт не розглядається в посібнику.
На початок XXI ст., стандарт SQL99 не був реалізований жодним виробником програмного забезпечення.
У цей час розвиток SQL-стандартів відбувається в трьох областях. Перша із цих областей – доступ до даних через Internet (зокрема, у зв’язку з виникненням стандартів XML); друга – інтегрування з Java за допомогою JDBC (Java Database Connectivity – з’єднання з базами даних на основі Java) компанії Sun, або власних реалізацій. Нарешті, групи розробки SQL-стандартів розглядають способи реалізації в мові моделей програмування на основі об’єктів.
