6. Прикладное ПО
Существенный вклад в разработку БД этого типа сделал американский ученый Е. Кодд (Е. Codd).
Достоинством реляционной БД является сравнительная простота инструментальных средств ее поддержки, недостатком – жесткость структуры данных (невозможность, например, задания строк таблицы произвольной длины) и зависимость скорости ее работы от размера базы данных. Для многих операций, определенных в такой БД, может оказаться необходимым просмотр всей БД.
Иерархическая и сетевая БД предполагают наличие связей между данными, имеющими какой-либо общий признак. В иерархической БД такие связи могут быть отражены в виде дерева-графа, где возможны только односторонние связи от старших вершин к младшим. Это ускоряет доступ к необходимой информации, но только если все возможные запросы отражены в структуре дерева. Никакие иные запросы на извлечение информации не будут удовлетворены.
Указанный недостаток снят в сетевой БД, в которой (по крайней мере, теоретически) возможны связи «всех со всеми». Поскольку на практике это осуществить невозможно, приходится прибегать к некоторым ограничениям. Использование иерархической и сетевой БД ускоряет доступ к информации в базе данных. Каждый элемент данных должен содержать ссылки на некоторые другие элементы. По этой причине требуются значительные ресурсы как дисковой, так и оперативной памяти ЭВМ.
Сведения о некоторых СУБД приведены в таблице.
Рассмотрим основные понятия и компоненты реляционных БД (например, MS Access), которые в настоящее время имеют наибольшее коммерческое использование.
Реляционная БД ориентирована на организацию данных в виде двумерных таблиц-отношений. Каждая таблица представляет собой двумерный массив и обладает следующими свойствами:
• - каждый элемент таблицы – это один элемент данных;
• - все столбцы в таблице однородные, т. е. все элементы в столбце имеют одинаковые длину и тип (числовой, символьный и т. д.);
• - каждый столбец имеет уникальное имя;
• - одинаковые строки в таблице отсутствуют;
• - порядок следования строк и столбцов может быть произвольным.