вністю адекватно поняттю типу даних в мовах програмування: числовий тип, грошовий, символьний, логічний та. т.п. У нашому прикладі ми маємо справу з даними трьох типів: рядки символів, цілі числа і "гроші".
Домен
Поняття домену більш специфічно для баз даних, хоча і має деякі аналогії з підтипами в деяких мовах програмування. У найзагальнішому вигляді домен визначається завданням деякого базового типу даних, до якого відносяться елементи домену, і довільного логічного виразу, який застосовується до елемента типу даних. Якщо обчислення цього логічного виразу дає результат "Істина", то елемент даних є елементом домену. p> Найбільш правильною інтуїтивною трактуванням поняття домену є розуміння домену як допустимого потенційного безлічі значень даного типу. Наприклад, домен "Імена" у нашому прикладі визначено на базовому типі рядків символів, але в число його значень можуть входити лише ті рядка, які можуть зображати ім'я (зокрема, такі рядки не можуть починатися з м'якого знака).
Слід відзначити також семантичну (Смислову) навантаження поняття домену: дані вважаються порівнянними тільки в тому випадку, коли вони ставляться до одного домену. У нашому прикладі значення доменів "Номери перепусток "і" Номери груп "належать до типу цілих чисел, але не є порівнянними.
Схема відносини, схема бази даних
Схема відносини - це іменоване безліч пар {ім'я атрибута, ім'я домену (або типу, якщо поняття домену не підтримується) }. br/> В
У даному прикладі є 6 пар {ім'я атрибута, ім'я типу}: номер заліковки - числовий,
ПІБ-текстовий і т.д.,
і у цього безлічі з 6 пар є ім'я - Студенти
Схема БД (в структурному сенсі) - Це набір іменованих схем відносин. p> Кортеж, ставлення
Кортеж - це безліч пар {Ім'я атрибута, значення} відповідних даній схемі відносини
В
У даному прикладі є 3 кортежу, кожен складається з 6 пар {ім'я атрибута, значення}:
Номер заліковки - 123456, ПІБ - Іванов Олексій Іванович
Група - ЕУП-011 і т.д.,
Ставлення - це безліч кортежів, відповідають одній схемі відносини.
На практиці користувач представляє собі ставлення як таблицю , заголовком якої є схема відносини , а рядками - кортежі відносини; в цьому випадку імена атрибутів іменують стовпці цієї таблиці. Тому іноді говорять "Стовпець таблиці", маючи на увазі "атрибут відносини". Цією термінології дотримуються в більшості комерційних реляційних СУБД.
Фундаментальні властивості відносин
В
1) Відсутність кортежів-дублікатів
З цієї властивості випливає наявність у кожного відносини так званого первинного ключа - набору атрибутів, значення яких однозначно визначають кортеж відносини. Для кожного відносини по Принаймні повний набір його атрибутів володіє цією властивістю.
2) Відсутність впорядкованості кортежів
Це властивість дає додаткову гнучкість СУБД при зберіганні баз даних у зовнішній пам'яті і при виконанні запитів до бази даних. Це не суперечить тому, що при формулюванні запиту до БД можна зажадати сортування результуючої таблиці у відповідності зі значеннями деяких стовпців.
3) Відсутність впорядкованості атрибутів
Для посилання на значення атрибута в кортежі відносини завжди використовується ім'я атрибута. Ця властивість дозволяє, наприклад, модифіковані схеми існуючих відносин не тільки шляхом додавання нових атрибутів, а й шляхом видалення існуючих атрибутів.
4) Атомарність значень атрибутів
На перетині рядка і стовпчика повинно знаходитися тільки одне значення атрибута. Не може бути складеного заголовка атрибута. br/>
товар
виручка
план
факт
показник
виручка, план
виручка, факт
В
Неатомарний атрибут Атомарне атрибут
...