Зачем нужны реляционные БД если уже были DMS?

Вот объясните-ка мне пожалуйста, зачем были созданы как таковые реляционные базы данных, если ранее уже были созданы DMS - Data Management System? По сути такие же функции выполняют и реляционные БД - тобишь, хранение данных. В чём прикол? Или это одно и то же, только с другим названием?

По большому счёту Вы правы, функции у них практически аналогичны. Главную функцию баз данных - отделение реализации программы от данных в базе данных - data management system тоже выполняют. Но есть между ними одно большое отличие, которое заключается в модели данных, на основе которой строится сама база данных.

DMS строится на иерархической модели данных. Это значит, что вся структура DMS выглядит как дерево, у которого есть один родитель (корень) и множество разветлений. Какой большой бы ни была база данных, она всё равно будет выглядеть как дерево: правило "один родитель - множество детей" должно быть соблюдено в любом случае. Связь "многие ко многим" логично невозможна.

SQL - structured query language - это отструктурированный язык запросов для РЕЛЯЦИОННОЙ базы данных. В данном случае термин "реляционность" означает "отношение". Это означает, что возможно организовать связь "многие ко многим".

Представьте себе ситуацию, когда вам необходимо создать базу данных, описывающую работу библиотеки. В библиотеке хранятся книги. У каждой книги есть множество авторов, в то же самое время у каждого автора может быть множество книг. Это и есть связь "многие ко многим". Как реализовать эту задачу при условии если мы работаем с иерархической базой данных (тобишь, DMS)? Выход есть только один, и тот очень затратный как по ресурсам, так и по времени: нужно создавать копии каждого объекта в отношениях "многие ко многим" и перепривязывать эти копии друг к другу. Гемор? - не то слово.

Реляционные базы данных SQL позволяют решать эту же задачу намного проще, понятнее и быстрее, просто организовав сам шаблон связи через первичные и foreign ключи. Вот за этим и были созданы SQL базы данных.