Корректно ли говорить, что электронная таблица (н-р, excel) является реляционной БД? И если нет, то почему?

Ответить
Ответить
Комментировать
0
Подписаться
0
2 ответа
Поделиться

Реляционной точно нет. Давайте систематизируем всю необходимую нам для этого вопроса теминологию.

Если у нас есть данные и какие-нибудь правила их организации, то это база данных. Под правилами я тут подразумеваю всё что угодно, делающее возможным пользоваться данными для решения прикладной задачи. Например, в СССР были бумажные телефонные справочники, и можно было по фамилии человека найти номер. Но вот по номеру фамилию практически нереально. Т.е. для такой обратной задачи телефонная книга не является удобной базой данных.

Приложение или комплекс приложений, обеспечивающих управление базой данных - это СУБД, система управления базой данных. Под управлением тут подразумеваются совершенно конкретные вещи: доступ, добавление, изменение, удаление.

Табличные процессоры (они же электронные таблицы) вполне отвечают последнему определению. Их применение гораздо шире, но онимогут использоваться в такой роли и являться системами управления базами данных.

Но вот слово "реляционные" появляется в этих терминах не просто так. Это частный случай баз данных, где правила организации этих данных выбраны не произвольно а применяют реляционную алгебру. То, что мы привыкли называть таблицами в реляционной алгебре называется отношениями (relations). Отсюда и название. Чтобы образовалось отношение необходимо взять некоторое количество доменов (например, фамилия, имя, отчество, дата рождения), и свзязав из вместе назвать "Отношение Персона". Затем это отношение наполняется кортежами, то есть записями, с конкретными данными. А дальше реляционная алгебра определяет два вида операций: над кортежами (добавление, удаление, изменение); и над самими отношениями: выборка, проекция, объединение, пересечение, вычитание, соединение (и даже деление, но оно не применяется в реальных СУБД).

Как Вы возможно заметили, отношение похоже на таблицу, а кортежи на её строки, но сходства с таблицами на этом заканчиваются. Если выборку и проекцию в Excel можно с некоторой натяжкой реализовать с помощью функций ВПР и ГПР, то другие операции не поддерживаются штатными средствами. С помощью изрядного количестся макросов на Visual Basic for Applications в Excel-е можно создать маленькую реляционную СУБД (или СУРБД), но нативными (штатными) средствами Excel всего этого не умеет.

Резюме: Табличные процессоры обычно можно использовать как СУБД (DBMS), но не как СУРБД (RDBMS).

3
0
Прокомментировать

нет конечно, ни в коей мере электронная таблица не является реляционной БД  - по определению реляционной БД, которая должна отвечать 12 правилам Кодда
Кроме т ого, данные в электронных талицах ненормализованы (не помню, есть ли требование нормализации в парвилах Кодда, поэтому упомяну отдельно)

И, как следствие, электронные таблицы не отвечают и следующим требованиям

  •  Модель данных в реляционных БД определена заранее. Является  строго типизированной, содержит ограничения и отношения для обеспечения  целостности данных.
  •  Модель данных основана на естественном представлении содержащихся данных, а не на функциональности приложения.
  •  Модель данных подвергается нормализации, чтобы избежать  дублирования данных. Нормализация порождает отношения между таблицами.  Отношения связывают данные разных таблиц.
Циничный Реалистотвечает на ваши вопросы в своейПрямой линии
3
0

Да, нормализация является прямым следствием нескольких правил Кодда. Например, NF1 - это соблюдение требования атоманости, согласно правилу Кодда №1.
Требуется уточнения, что те "отношения" (links) которые Вы тут упоминаете, это не те "отношения" (relations), которые дали название реляционным БД.

+2
Ответить
Прокомментировать
Ответить