
- •Історія розвитку баз даних
- •2.Перспективи розвитку систем управління базами даних.
- •Перспективи розвитку систем управління базами даних
- •Основні поняття та визначення бд
- •Архітектура бази даних. Фізична та логічна незалежність
- •5. Поняття інформаційно-логічної моделі
- •Етапи життєвого циклу бази даних
- •Основні функції субд
- •Типова організація сучасної субд
- •Класифікація моделей даних
- •11.Ієрархічна модель даних.
- •12.Моделі засновані на інвертованих списках.
- •13.Реляційні бази даних.
- •14.Основні оператори реляційної алгебри.
- •15. Основні елементи er-моделі
- •16. Основні етапи побудови логічної моделі
- •17. Таблиці, унікальність і ключі
- •18. Зовнішні ключі і домени
- •19. Моделювання відносин у базі даних
- •1. Цілісність сутностей
- •2. Цілісність значень
- •21. Перша нормальна форма
- •22. Друга нормальна форма
- •23. Третя нормальна форма
- •Четверта нормальна форма
- •Нормальна форма Бойса-Кодда (нфбк)
- •П’ята нормальна форма
- •Кодування та набори сортування в sql
- •Тема 3. Створення таблиць
- •1. Команда створення таблиці.
- •2. Заборона значення null за допомогою обмеження not null
- •Властивість identity оператора create table
- •Обмеження primary key оператора create table
- •Обмеження foreign key оператора create table
- •Обмеження unique оператора create table
- •Обмеження check оператора create table
- •Обмеження default оператора create table
- •Типи стовпців в sql
- •37.Визначення таблиці за допомогою директиви from
- •Вказівка стовпців в операторі select
- •Вибір рядків і стовпців за допомогою директиви where
- •Використання директиви order by
- •Використання ключового слова distinct для вибірки унікальних значень стовпця
- •42.Використання арифметичних операторів в запиті на вибірку даних
- •43.Використання директиви group by
- •44.Об'єднання результатів запиту за допомогою директиви union
- •45.Використання строкових функцій
- •46.Використання числових функцій
- •47.Додавання даних до таблиці за допомогою оператора insert
- •48.Використання та синтаксис оператора replace
- •49.Використання оператора update
- •50.Видалення даних в sql
Історія розвитку баз даних
Бази даних - це одна з найбільш важливих сучасних комп'ютерних технологій. Сьогодні вони багато в чому асоціюються з банківськими транзакціями, хоча так було не завжди. Історія баз даних починається з одного із самих значних інженерних подвигів минулого сторіччя: польоту на Місяць. Північноамериканська компанія Rockwell уклала контракт з урядом США на участь в проекті Apollo. Побудова космічного корабля включає в себе збірку декількох мільйонів деталей, тому була створена система управління файлами, відстежувати інформацію про кожній деталі. Проте в ході подальшої перевірки виявилася величезна надмірність. З'ясувалося, що майже всі дані повторюються у двох та більше файлах. Зіткнувшись із завданням координації замовлень на мільйони деталей, компанія Rockwell у співробітництві з IBM в 1968 р. розробила автоматизовану систему замовлень. Названа IMS (Information Management System - система управління інформацією), вона заклала основу концепції СУБД. Ключовим нововведенням IMS був поділ даних і функцій ділової логіки. Прикладні програмісти отримали можливість працювати з інформацією на логічному рівні, а база даних брала на себе завдання фізичного зберігання. Подібне поділ праці призвело до різкого стрибка продуктивності. Ще одним винаходом стала мова DL / I (Data Language / I). Це був спеціалізований мова складання нерегламентованих запитів до бази даних. Його поява зробила непотрібним дороге програмування на таких мовах, як COBOL і FORTRAN, популярних у той час. В СУБД IMS, застосовуваної досі, реалізована ієрархічна модель даних, в якій існує один - єдиний шлях від кореня ієрархії до кожного запису. Така модель стала основою для систем керування даними, вона ж дала поштовх до подальших винаходів через свою обмеженість. Повна історія IMS була опублікована в 1998 р. У 1971 р. відбулася конференція з мов обробки даних (Conference on Data Systems Languages, CODASYL) у завдання якої входила розробка стандартів баз даних. Раніше ця конференція вже стандартизованих мову COBOL. Новий стандарт був розширений на ієрархічну модель даних, застосовувану в IMS. Результатом стала поява мережної моделі даних. У мережній моделі будь-який запис може брати участь в декількох відносинах предок / нащадок. Це дозволяло обходити цілий ряд обмежень ієрархічної моделі. Розробкою мережної моделі займався Чарльз Бейчман (Charles Bachman) в той час керівник проекту IDS (Integrated Data System - інтегрована система обробки даних) в компанії General Electric. Він же винайшов "діаграми Бейчман" описують мережеві бази даних. За свою працю в 1973 р. Бейчман отримав нагороду Тьюринга. Тим часом науковий співробітник компанії IBM доктор Едгар Кодд (Edgar Codd) працював над епохальним документом для Асоціації виробників обчислювальної техніки (Association for Computing Machinery, ACM). У червні 1970 р. цей документ був опублікований в ACM Journal під назвою "Реляційна модель для великих банків спільно використовуваних даних" ("A Relational Model of Data for Large Shared Data Banks"). Цей документ докорінно змінив теорію баз даних і приніс докторові Кодда нагороду Тьюринга в 1981 році. Доктор Кодд придумав реляційну модель, в якій дані можна було вільно описувати в їх природному вигляді без будь-яких обмежень, що накладаються середовищем фізичного зберігання. Отже, це дозволяло створити мову високого рівня, здатний працювати з даними незалежно від того, як вони зберігаються в комп'ютері. У результаті з'явилися дві СУБД: System R компанії IBM і Ingres Каліфорнійського університету в Берклі. В обох був реалізований реляційний модуль і мова запитів. Останній в СУБД System R спочатку називався SEQUEL (Structured English Query Language - структурований англійську мову запитів). Пізніше з'явилася назва SQL (Structured Query Language). У 1986 р. організація ANSI опублікувала офіційний стандарт мови SQL.