
- •Поняття інформаційної системи. Поняття інформаційних технологій. Міжнародні інформаційні системи та технології
- •Життєвий цикл інформаційних систем
- •Поняття бази даних (бд). Місце бд в інформаційних системах
- •Розвиток основних понять представлення даних. Приклад щодо нарахування заробітної плати
- •Розвиток основних понять представлення даних. Приклад щодо обліку кадрового складу
- •Системи управління базами даних (субд). Головні поняття. Основні функції субд
- •Різні архітектурні рішення, які використовуються при реалізації багато користувальницьких субд. Централізована архітектура
- •Різні архітектурні рішення, які використовуються при реалізації багато користувальницьких субд. Технологія з мережею та файловим сервером
- •Різні архітектурні рішення, які використовуються при реалізації багато користувальницьких субд. Технологія «клієнт-сервер»
- •Різні архітектурні рішення, які використовуються при реалізації багато користувальницьких субд. Триланкова архітектура «клієнт-сервер»
- •Огляд субд. Настільні субд. Серверні субд. Ms sql Server. Oracle. Серверні бази даних компанії івм
- •Різні уявлення про дані в базах даних
- •Основні етапи проектування бази даних
- •Перша стадія концептуального проектування бази даних. Опис інформаційного представлення предметної області. Er-діаграма
- •Перша стадія концептуального проектування бази даних. Атрибут. Зв’язки. Максимальні кардинальні числа
- •Побудова концептуальної моделі у вигляді er-діаграми. Головні етапи побудови Побудова концептуальної моделі у вигляді er-діаграми Перший етап
- •Другий етап
- •Третій етап
- •Побудова концептуальної моделі у вигляді er-діаграми. Моделювання локальних представлень
- •Побудова концептуальної моделі у вигляді er-діаграми. Об’єднання локальних представлень
- •Побудова концептуальної моделі у вигляді er-діаграми. Обмеження цілісності
- •Друга стадія концептуального проектування бд. Представлення концептуальної моделі засобами моделі даних субд
- •Друга стадія концептуального проектування бд. Типові моделі даних субд і представлення концептуальної моделі. Мережева модель даних
- •Друга стадія концептуального проектування бд. Типові моделі даних субд і представлення концептуальної моделі. Ієрархічна модель даних
- •Друга стадія концептуального проектування бд. Типові моделі даних субд і представлення концептуальної моделі. Реляційна модель даних
- •Друга стадія концептуального проектування бд. Типові моделі даних субд і представлення концептуальної моделі. Багатовимірна модель даних
- •Засоби автоматизованого проектування концептуальної моделі
- •Використання формального апарату для оптимізації схем відношень. Проблема вибору раціональних схем відношень
- •Використання формального апарату для оптимізації схем відношень
- •Функціональні залежності між атрибутами відношень
- •Використання формального апарату для оптимізації схем відношень. Декомпозиція схеми відношення
- •Вибір раціонального набору схеми відношень шляхом нормалізації. Нормальні форми
- •Приклади нормалізації до 3нф
- •Фізичні моделі даних (внутрішній рівень). Структура пам’яті комп’ютера
- •Представлення екземпляра логічного запису
- •Організація обміну між оперативною і зовнішньою пам’яттю
- •Структура зберігання даних у зовнішній пам’яті комп’ютера. Послідовне розміщення фізичних записів
- •Пошук запису із заданим значенням ключа
- •Структура зберігання даних у зовнішній пам’яті комп’ютера. Розміщення фізичних записів у вигляді спискової структури
- •Пошук запису із заданим значенням ключа
- •Структура зберігання даних у зовнішній пам’яті комп’ютера. Використання індексів. В-дерева
- •Пошук і читання запису із заданим значенням ключа
- •Модифікація (коректування) запису
- •Видалення запису
- •Додавання запису
- •Структура зберігання даних у зовнішній пам’яті комп’ютера. Розміщення записів з використанням хешування
- •Пошук запису із заданим значенням ключа і читання
- •Модифікації запису
- •Видалення запису
- •Додавання запису
- •Загальна структура сучасної субд (на прикладі ms sql Server)
- •Архітектура бд. Логічний рівень
- •Тип даних hierarchyid
- •Просторові типи даних
- •Індекси
- •Представлення
- •Складки
- •Обмеження
- •Правила
- •Значення за замовчуванням
- •Архітектура бд. Фізичний рівень
- •Файли і файлові групи
- •Сторінки і екстенти
- •Сторінки файлів даних
- •Організація таблиць та індексів
- •Управління роботою з екстентами і вільним місцем
- •Відстежування вільного місця
- •Програмне забезпечення роботи з сучасними бд. Основні завдання пз бд
- •Програмне забезпечення роботи з сучасними бд. Проблеми створення і ведення реляційних бд
- •Поняття мови sql і його основні частини. Історія виникнення і стандарти мови sql
- •Поняття мови sql і його основні частини. Переваги мови sql. Загальна характеристика sql
- •Напрями розвитку бд. Об’єкто-орієнтований підхід до організації бд
- •Об'єктно-орієнтоване програмування
- •Об'єктно-орієнтовані бази даних
- •Напрями розвитку бд. Об’єктно-реляційні субд
- •Напрями розвитку бд.. Розподілені бд. Сховища даних
- •Сховища даних
Поняття мови sql і його основні частини. Історія виникнення і стандарти мови sql
Історія виникнення починається з 1970 р. Стандарти в галузі програмного забезпечення розробляють ANSI та ISO.
Міжплатформенна переносимість Наявність стандартів Схвалення і підтримка компанією IBM, Microsoft
Історія виникнення мови SQL починає з 1970 року [5], коли доктор Е.Ф. Кодд запропонував реляційну модель як нову модель бази даних. Для доказу життєздатності нової моделі даних усередині компанії IBM був створений потужний дослідницький проект, що отримав назву System/R. Проект включав розробку власне реляційної СУБД і спеціальної мови запитів до бази даних. Так на початку 70-х років з'явився перший дослідницький прототип реляційної СУБД. Для цього прототипу розроблялися і випробувалися різні мови запитів, один з яких отримав назву SEQUEL (Structured English Query Language). З моменту створення і до наших днів ця мова зазнала багато змін, але ідеологія залишилася незмінною.
Період з 1979 року (закінчення проекту System/R) до теперішнього часу характеризується розвитком і вдосконаленням мови SQL і його роллю, що постійно збільшується, в індустрії, пов'язаній із створенням і експлуатацією баз даних. Абсолютно вочевидь, що мова ніколи не отримала б світового визнання, якби на нього не було жодних стандартів. Стандартизація – важлива частина технологічних процесів кінця XX століття. Саме наявність розроблених і офіційно визнаних стандартів дозволила затвердитися багатьом сучасним технологіям (не лише в індустрії розробки програмного забезпечення, але і в багатьох інших сферах людської діяльності). Як йде справа із стандартами мови SQL і їх підтримкою в поширених СУБД?
Коли ведуть мову про стандарти в області, пов'язаній з розробкою програмного забезпечення, зазвичай мають на увазі дві організації: ANSI (American National Standards Institute) – Американський національний інститут стандартів; ISO (International Standards Organization) – Міжнародну організацію по стандартизації.
Робота над офіційним стандартом мови SQL почалася в 1982 році [8] в рамках комітету ANSI. У 1986 році (зверніть увагу, скільки часу пішло на розробку стандарту і узгодження деталей!) був затверджений перший варіант стандарту ANSI, а в 1987 році цей стандарт був затверджений і ISO. У 1989 році стандарт зазнав незначні зміни, але саме цей варіант отримав назву SQL-1 або SQL‑89. У чому особливість SQL-89? За час розробки стандарту (1982–1989 рр.) були створені, представлені на ринок і активно використовувалися декілька різних СУБД. В цих СУБД в тому або іншому вигляді був реалізований деякий діалект мови SQL. З урахуванням того, що розробкою стандартів займалися ті ж люди, хто впроваджував SQL в СУБД, стандарт SQL-89 був плодом безлічі компромісів. Це призвело до наявності в стандарті великої кількості "білих плям", тобто місць, які не були описані, а віддані на розсуд розробників діалекту. В результаті мало не усі наявні діалекти стали сумісними із стандартом, але особливої користі це не принесло.
Наступна реалізація стандарту була покликана вирішити цю проблему. В результаті тривалих обговорень і узгоджень в 1992 році був прийнятий новий стандарт ANSI SQL-2 або SQL-92. SQL‑92, який заповнив багато "білих плям", вперше додавши в стандарт можливості, ще не реалізовані в існуючих комерційних СУБД.
Робота над стандартизацією продовжується і далі. З'явилися стандарти SQL-1999, SQL-2003. Проте, всі ці стандарти не вирішили всіх проблем, пов'язаних з наявністю декількох діалектів мови. Як правило, розробники як ігнорували, так і ігнорують деякі положення стандарту, з одного боку, відмовляючись реалізовувати деякі його частини і, з іншого боку, реалізовуючи те, що відсутнє в стандарті. Не дивлячись на наявні відмінності, всі комерційні СУБД підтримують деяке ядро мови, описане в стандарті, однаково. Відмінностей не дуже багато, вони не носять принципового характеру. Хоча кожна СУБД як і раніше підтримує свій діалект мови.
У систему управління базами даних Microsoft SQL Server входить мова TRANSACT-SQL, розроблена на основі одного із стандартів SQL.