
- •А.В. Брешенков
- •Проектирование баз данных на основе информации табличного вида
- •1. Анализ проблемы проектирования реляционных баз данных на основе использования информации табличного вида 8
- •5. Назначение ключевых полей 142
- •6. Выявление и формирование связей между заполненными таблицами 157
- •7. Объединение таблиц 190
- •8. Разработка и исследование модели методики проектирования реляционных баз данных на основе использования информации табличного вида 220
- •Предисловие
- •Глава 5 посвящена методу назначения ключевых полей в заполненных нереляционных таблицах.
- •1. Анализ проблемы проектирования реляционных баз данных на основе использования информации табличного вида
- •1.1. Понятие информации табличного вида
- •1.2. Мотивы преобразования информации табличного вида в файлы реляционных баз данных
- •1.3. Основные требования к средствам преобразования информации табличного вида в реляционные таблицы
- •1.4. Задачи объединения и разбиения реляционных таблиц
- •1.5. Задачи нормализации реляционных таблиц
- •1.6. Преобразование реляционных нормализованных таблиц в файлы бд
- •1.7. Вопросы преобразования электронных таблиц
- •Упражнения и вопросы для самоконтроля
- •2. Постановка задачи проектирования реляционных баз данных на основе использования информации табличного вида
- •2.1. Укрупненная модель реляционной базы данных
- •2.2. Укрупненная модель информации табличного вида
- •2.3. Задачи преобразования заполненных нереляционных таблиц в реляционные таблицы Преобразование нереляционных таблиц в реляционные таблицы
- •Нормализация заполненных таблиц
- •Назначение ключевых полей для заполненных таблиц
- •Выявление и формирование связей между заполненными реляционными таблицами
- •Упражнения и вопросы для самоконтроля
- •3. Преобразование нереляционных таблиц в реляционные таблицы
- •3.1. Приведение значений атрибутов заполненных таблиц к одному типу
- •3.2. Исключение дублирования записей
- •Упражнения и вопросы для самоконтроля
- •4. Нормализация заполненных реляционных таблиц.
- •4.1. Проблемы нормализации
- •4.2. Модели информации табличного вида и реляционных таблиц.
- •4.2.1. Модель информации табличного вида
- •4.2.2. Модель реляционной таблицы
- •4.3. Преобразование заполненных таблиц к первой нормальной форме
- •4.3.1. Избавление от сложных атрибутов
- •4.3.2. Исключение подзаголовков расположенных внутри таблицы
- •4.3.3. Нормализация заполненных таблиц с подзаголовками в первом столбце.
- •4.4. Преобразование заполненных таблиц ко второй нормальной форме
- •4.5. Преобразование заполненных таблиц к третьей нормальной форме
- •Избавление от функциональной зависимости.
- •4.6. Преобразование заполненных таблиц к четвертой нормальной форме.
- •Упражнения и вопросы для самоконтроля
- •5. Назначение ключевых полей
- •5.1. Задача назначения ключевых полей в заполненных реляционных таблицах
- •5.2. Алгоритмы назначения ключевых полей в заполненных реляционных таблицах
- •Упражнения и вопросы для самоконтроля
- •6. Выявление и формирование связей между заполненными таблицами
- •6.1. Выявление и формирование связей один - к одному
- •6.2. Выявление и формирование связей один - ко многим
- •6.3. Выявление и формирование связей многие - ко многим.
- •Формирование 3-й таблицы для реализации многозначных связей.
- •Упражнения и вопросы для самоконтроля
- •7. Объединение таблиц
- •7.1. Проблемы объединения таблиц
- •Исходные таблицы по своей природе удовлетворяют требованиям совместимости, а по форме – нет.
- •Исходные таблицы удовлетворяют требованиям совместимости, результирующую таблицу необходимо обновлять.
- •Исходные таблицы частично удовлетворяют требованиям совместимости.
- •7.2. Объединение и обновление совместимых таблиц
- •7.3. Объединение таблиц, частично удовлетворяющих требованиям совместимости
- •Упражнения и вопросы для самоконтроля
- •8. Разработка и исследование модели методики проектирования реляционных баз данных на основе использования информации табличного вида
- •8.1. Постановка задачи разработки модели методики
- •8.2. Операторная модель преобразования информации табличного вида к реляционным базам данных
- •8.3. Исследование методики преобразования информации табличного вида в реляционные базы данных
- •8.4. Исследование динамических свойств функционирования системы.
- •8.5. Исследование временных свойств системы.
- •Упражнения и вопросы для самоконтроля
- •Список литературы
2.2. Укрупненная модель информации табличного вида
В альтернативу укрупненной модели реляционной модели БД, предельно абстрагированной от большинства ее характеристик, рассмотрим модель информации табличного вида.
На рис.2.3 приведена схема информации табличного вида.
Предметная
область
NT1 NT2 NTQ
-
П1 NT1
П1 NT2
…
П1 NTQ
П2 NT1
П2 NT2
П2 NTQ
…
…
…
ПN NT1
ПK NT2
ПT NTQ
Рис.2.3. Схема информации табличного вида
В данном случае известны и соответственно отображены только структуры таблиц. Следует подчеркнуть, что в отличие от случая, представленного на рис. 2.2 таблицы всегда заполнены данными.
Как видно из рисунка, ключевые поля в таблицах отсутствуют, связей между таблицами нет. Предполагается, что таблицы сгруппированы по смыслу в рамках одной предметной области.
Таким образом, укрупненную модель информации табличного вида можно представить следующим образом.
NТ = {NТ1, NТ2, …, NТi, …, NТq}, где
q – число таблиц в наборе;
NТi – i-я нереляционная, ненормализованная таблица набора.
NТi соответствует предметной области.
NТi = (Пi1 Пi2, …, Пij, …, Пin), где
Пij – j-е поле i – ой таблицы;
n – число полей таблицы.
Несмотря на сходство представленной укрупненной модели и укрупненной модели БД, очевидны их существенные различия. В частности:
- NТi, в отличие от Ti, нереляционные, ненормализованные таблицы;
- NТi, в отличие от Ti, не содержит ключевых полей.
- NT(Sj) = – множества связанных таблиц, в отличие от T(Sj) пустые.
Здесь перечислены только основополагающие различия, которые сформулированы с использованием укрупненных моделей. Детализация моделей позволит выявить и другие важные отличия между БД и табличным представлением информации.
Но даже этих отличий достаточно для того, чтобы сделать вывод о том, что существуют проблемы преобразования табличного вида информации к БД. Кроме того, анализ несовпадения моделей позволит сформулировать важные проблемы преобразования.
Проведение мероприятий по сведению модели информации табличного вида к модели БД, с одной стороны, обеспечит построение реляционной БД с уже внесенными данными в таблицы, а, с другой стороны, позволит использовать в ходе разработки и эксплуатации БД существующую теорию построения реляционных БД.
Из сравнительного анализа моделей следует суть основных мероприятий, которые необходимо выполнить.
К их числу можно отнести разработку подхода преобразования нереляционных заполненных таблиц к реляционным таблицам, разработку подхода назначения ключевых полей в заполненных таблицах, разработку подхода нормализации заполненных таблиц, разработку подхода формирования связей между заполненными таблицами.
Конкретизируем эти подходы и сформулируем задачи с целью детального их рассмотрения и реализации соответствующих алгоритмов, методов, методик и средств.
2.3. Задачи преобразования заполненных нереляционных таблиц в реляционные таблицы Преобразование нереляционных таблиц в реляционные таблицы
В литературе [2] сформулированы требования к реляционным таблицам. В соответствии с этими требованиями, в частности, в реляционных таблицах должны отсутствовать сложные атрибуты, типы одноименных атрибутов должны совпадать, записи реляционных таблиц не должны дублироваться.
В связи с этим необходима разработка метода избавления от сложных атрибутов. Метод должен обеспечивать избавление от сложных атрибутов в заголовках таблиц, а также обеспечить преобразование сложных значений атрибутов в простые значения атрибутов.
В рамках этого же метода необходимо выполнить следующие мероприятия:
- разработку алгоритма исключения заголовков внутри таблиц;
- разработку алгоритма избавления от первого атрибута, если он используется в качестве заголовка таблицы;
- разработку метода приведения значений атрибутов к одному типу;
- разработку алгоритма исключения дублирования записей.
Эти методы, организованные в нужной последовательности, составят методику преобразования заполненных нереляционных таблиц в реляционные.