Релационен модел на данни в СУБД: Concepts & Пример
⚡ Умно обобщение
Релационният модел представя база данни като колекция от релации, където всяка релация е таблица от редове и колони. Той дефинира основни концепции, ограничения за целостта и операции за актуализиране, които поддържат релационните данни последователни и лесни за заявки.

Какво е релационният модел?
Релационен модел (RM) представя базата данни като колекция от релации. Отношението не е нищо друго освен таблица със стойности. Всеки ред в таблицата представлява колекция от свързани стойности на данни. Тези редове в таблицата обозначават обект или връзка от реалния свят.
Имената на таблицата и колоните помагат за интерпретиране на значението на стойностите във всеки ред. Данните са представени като набор от релации. В релационния модел данните се съхраняват като таблици. Физическото съхранение на данните обаче е независимо от начина, по който те са логически организирани.
Моделът е предложен от Е. Ф. Код през 1970 г. и остава основата на почти всяка основна база данни, използвана днес. Някои популярни системи за управление на релационни бази данни са:
- DB2 и Informix Dynamic Server – IBM
- Oracle и RDB – Oracle
- SQL Server и Access – Microsoft
Релационен модел Concepts в СУБД
- Атрибут: Всяка колона в таблица. Атрибутите са свойствата, които дефинират дадена релация, например Student_Rollno, NAME и др.
- Маси: В релационния модел релациите се запазват в табличен формат. Те се съхраняват заедно със своите обекти. Таблицата има две свойства, редове и колони. Редовете представляват записи, а колоните представляват атрибути.
- Кортеж: Това не е нищо друго освен един ред от таблица, който съдържа един запис.
- Схема на връзката: Схемата на релацията представлява името на релацията с нейните атрибути.
- Степен: Общият брой атрибути в релацията се нарича степен на релацията.
- Кардиналност: Общият брой редове, присъстващи в таблицата.
- Колона: Колоната представлява набор от стойности за конкретен атрибут.
- Екземпляр на релация: Екземплярът на релация е краен набор от кортежи в системата RDBMS. Екземплярите на релации никога нямат дублиращи се кортежи.
- Ключ за връзка: Всеки ред има един, два или няколко атрибута, което се нарича ключ на релацията.
- Домейн на атрибута: Всеки атрибут има предварително дефинирана стойност и обхват, които са известни като домейн на атрибута.
След като речникът е налице, следващата грижа е да се запазиping данните в тези релации са валидни, което е задача на ограниченията за целостта.
Релационна Integrity Ограничения
Ограниченията за релационна цялост в СУБД се отнасят до условия, които трябва да са налице за валидна релация. Тези релационни ограничения са извлечени от правилата в мини-света, който базата данни представлява.
Съществуват много видове ограничения за целостта. Ограниченията на системата за управление на релационни бази данни се разделят най-вече на три основни категории:
- Ограничения на домейна
- Основни ограничения
- Референтни Integrity Ограничения
Ограничения на домейна
Ограниченията на домейна могат да бъдат нарушени, ако стойността на атрибут не се появява в съответния домейн или ако не е от подходящия тип данни.
Ограниченията на домейна указват, че във всеки кортеж стойността на всеки атрибут трябва да е атомарна и да се извлича от правилния домейн. Домейните се определят като типове данни, които включват стандартни типове като цели числа, реални числа, символи, булеви стойности и низове с променлива дължина.
Пример:
CREATE DOMAIN CustomerName CHECK (value NOT NULL)
Показаният пример демонстрира създаването на ограничение на домейн, такова че CustomerName не е NULL.
Основни ограничения
Атрибут, който може уникално да идентифицира кортеж в релация, се нарича ключ на таблицата. Стойността на атрибута за различните кортежи в релацията трябва да бъде уникална.
Пример:
В дадената таблица, CustomerID е ключов атрибут на таблицата Customer. Най-вероятно е да има един ключ за един клиент; CustomerID = 1 е само за CustomerName.Google„Пълно описание на различните видове ключове е обхванато в ръководството за Ключове за СУБД.
| CustomerID | Потребителско име | Статус |
|---|---|---|
| 1 | Активен | |
| 2 | Amazon | Активен |
| 3 | iPhone | неактивен |
Референтни Integrity Ограничения
Ограниченията за референтна цялост в СУБД се основават на концепцията за външни ключове. Външният ключ е важен атрибут на релация, който трябва да бъде препратен в други релации. Ограничение за референтна цялост възниква, когато една релация препраща към ключов атрибут на различна или същата релация. Този ключов елемент трябва да съществува в цитираната таблица.
Пример:
В горния пример имаме две релации, Клиент и BillING.
Кортежът за CustomerID = 1 е цитиран два пъти в релацията Billинг. Така че знаем CustomerName „Google„има сума за фактуриране от 300 долара.“
Operaции в релационния модел
Върху релационния модел на база данни се извършват четири основни операции за актуализиране: вмъкване, актуализиране, изтриване и избор.
- Insert се използва за вмъкване на данни в релацията.
- Delete се използва за изтриване на кортежи от таблицата.
- Modify ви позволява да промените стойностите на някои атрибути в съществуващи кортежи.
- Select ви позволява да изберете конкретен диапазон от данни.
Винаги, когато се прилага една от тези операции, ограниченията за целостта, зададени в схемата на релационната база данни, никога не трябва да бъдат нарушавани.
Поставете OperaАЦИ
Операцията за вмъкване дава стойности на атрибутите за нов кортеж, който трябва да бъде вмъкнат в релация.
Актуализация OperaАЦИ
Можете да видите, че в таблицата с релации по-долу, CustomerName „Apple“ е актуализирано от Неактивно на Активно.
Изтрий OperaАЦИ
За да укажете изтриване, условие за атрибутите на релацията избира кортежа за изтриване.
В горния пример, CustomerName „Apple“ е изтрито от таблицата.
Операцията за изтриване може да наруши референтната цялост, ако изтритият кортеж е посочен от външни ключове от други кортежи в същия база данни.
Изберете OperaАЦИ
В горния пример, CustomerName „Amazon”Е избрано.
Релационен модел срещу йерархични и мрежови модели
Релационният модел замени два по-ранни подхода и контрастът обяснява защо той стана доминиращ. Таблицата по-долу ги сравнява.
| Аспект | Релационен модел | Йерархичен модел | Мрежов модел |
|---|---|---|---|
| структура | Таблици (релации) | Дърво, от родител на дете | Графика, много към много |
| Достъп до данни | Декларативно, по стойност | Навигационен, по път | Навигационен, с показалец |
| Взаимоотношения | Външни ключове | Връзки родител-дете | Множества и указатели |
| Език за заявки | SQL | Процедурен код | Процедурен код |
| Гъвкавост | Високо | ниско | Среден |
Тъй като релационният модел адресира данните по стойност, а не чрез навигиране по физически връзки, език на високо ниво като SQL може да изрази заявка, без да знае как се съхраняват данните.
Най-добри практики за създаване на релационен модел
- Данните трябва да бъдат представени като съвкупност от отношения.
- Всяка връзка трябва да бъде ясно изобразена в таблицата.
- Редовете трябва да съдържат данни за екземпляри на даден обект.
- Колоните трябва да съдържат данни за атрибутите на обекта.
- Клетките на таблицата трябва да съдържат една стойност.
- На всяка колона трябва да се даде уникално име.
- Не може да има два еднакви реда.
- Стойностите на даден атрибут трябва да са от един и същ домейн.
Предимства на модела на релационната база данни
- Простота: Релационният модел на данни в СУБД е по-прост от йерархичните и мрежовите модели.
- Структурна независимост: Релационната база данни се занимава само с данни, а не със структура, което може да подобри производителността на модела.
- Лесен за използване: Релационният модел е лесен за използване, тъй като таблиците, състоящи се от редове и колони, са естествени и лесни за разбиране.
- Възможност за заявки: Това позволява на език за заявки от високо ниво, като SQL, да избегне сложна навигация в базата данни.
- Независимост на данните: Структурата на релационна база данни може да бъде променена, без да е необходимо да се променя което и да е приложение.
- Scalable: По отношение на броя на записите или редовете и броя на полетата, базата данни може да бъде разширена, за да се подобри нейната използваемост.
Недостатъци на релационния модел
- Малко релационни бази данни имат ограничения за дължината на полетата, които не могат да бъдат превишени.
- Релационните бази данни понякога могат да станат сложни, тъй като количеството данни нараства и връзките между отделните части от данните стават по-сложни.
- Сложните релационни бази данни могат да доведат до изолирани бази данни, където информацията не може да се споделя от една система към друга.






