Нормальная форма Бойса-Кодда - раздел Программирование, Среда Delphi широко известна и не вызывает дополнительных трудностей при изучении и использовании
Пусть В Определенном Выше Отношении Sp Присутствует Еще И Имя...
Пусть в определенном выше отношении SP присутствует еще и имя поставщика Sname. Будем для удобства считать, что имя однозначно определяет поставщика. Тогда в отношении SP (Sn, Sname, Pn, Q) единственным неключевым атрибутом является Q. Имеются два возможных ключа
· Sn, Pn;
· Sname, Pn.
При изменении имени поставщика Sname должны корректироваться все записи, связанные с этим поставщиком.
Определим детерминантотношения как набор атрибутов, от которого функционально полно зависит какой-либо другой атрибут.
Отношение R находится в НФ Бойса-Кодда (НФБК), если каждый детерминант является возможным ключем отношения.
Приведение к НФБК также подразумевает декомпозицию таблицы. В приведенном примере разумно выделить атрибуты Sn и Sname в отдельное отношение S3 (Sn, Sname), оставив в прежнем виде отношение SP (Sn, Pn, Q).
Заметим, что отношение R, находящееся в НФБК, находится также во второй и третьей НФ.
Приведение к НФБК может вызвать помимо достоинств и некоторые аномалии. Рассмотрим отношение R (City, Adr, Ind), содержащее сведения о почтовых адресах. Здесь City – название города, Adr - адрес без указания города, Ind – шестизначный почтовый индекс. Как известно, в городе каждое почтовое отделение имеет свой индекс.
В отношении R нет неключевых атрибутов, поэтому оно находится во второй и третьей НФ. Возможными ключами являются сочетания City, Adr или Adr, Ind. Имеются функциональные зависимости
· City, Adr → Ind;
· Ind → City.
Атрибут Ind является детерминантом для атрибута City, но не является возможным ключом, поэтому отношение R не находится в НФБК. Одним из вариантов декомпозиции является представление информации в двух отношениях R1 (Ind, City) с ключом Ind и R2 (Ind, Adr) с обоими ключевыми атрибутами.
Пусть требуется по заданным значениям атрибутов City и Adr определить Ind. Адресу может соответствовать множество индексов разных городов, поэтому придется для каждого индекса определять город и сравнивать его с тем, который требуется. Таким образом, после декомпозиции потеряна функциональная связь City, Adr → Ind. Другие варианты разложения отношения R приводят к аналогичным проблемам.
В настоящее время список источников по теории и практике использования баз... В данном пособии подробно излагаются вопросы связанные с проектированием и нормализацией базы данных реляционной...
Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ:
Нормальная форма Бойса-Кодда
Что будем делать с полученным материалом:
Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:
История создания баз данных
Существуют различные определения базы данных. Обычно они либо неполны, либо слишком громоздки. Дадим простое определение, расширяя его по мере появления новых понятий.
Модели данных СУБД
Коцептуальной моделью данных в БД называют глобальное логическое описание данных. Структуры данных коцептуальной модели влияют на все характеристики СУБД, охватывая
· языки
Двенадцать правил Кодда для реляционных СУБД
В статье, опубликованной в 1985 году [3], Э. Кодд сформулировал двенадцать правил, которым должна соответствовать настоящая реляционная БД. Они являются полуофициальным определением понятия
Четвертая нормальная форма
Рассмотрим таблицу R (Subj, Teach, Book), где Subj – учебный предмет, Teach- преподаватель по этому предмету, Book – книга, рекомендуемая преподавателем Teach для изучения предмета
Семантическое моделирование данных.
Элементы модели "сущность-связь"
Семантическое моделирование данных на основе ER-диаграмм компактно и доступно изложено в [5], и мы будем следовать этому источни
В реляционной СУБД
Одним из главных достоинств иерархических и сетевых СУБД считают естественность представления данных иерархической и сетевой природы. А как представлять такие данные в реляционных С
Основы реляционной алгебры
Реляционная алгебра представляет собой совокупность операций над отношениями. Операндами и результатами операций являются отношения. Рассмотрим основные операции реляционной алгебры
Основы реляционного исчисления
Реляционное исчисление это математический аппарат, который позволяет путем использования исчисления предикатов, кванторов и переменных описывать отношения и операции над ними в виде
Общая характеристика и стандарты языка SQL
Язык SQL (Structered Query Language) впервые появился в рамках проекта разработки экспериментальной реляционной СУБД System R в исследовательской лаборатории фирмы IBM в 1975-1979 г
Внешнее соединение таблиц
Рассмотренные соединения называют внутренними (INNER JOIN). В некоторых случаях требуются соединения другого вида – внешние соединения (OUTER JOIN). Рассмотрим две таблицы A (Stud,
Вложенные запросы на чтение
В SQL существуют вложенные запросы, позволяющие использовать результаты одного запроса в качестве составной части другого. Вложенные запросы или подзапросы обладают следующими преим
Целостность данных
Термин “целостность данных” относится к правильности и полноте информации, содержащейся в БД. Вероятно, корректнее говорить о непротиворечивости данных, поскольку невозможно предотв
Триггеры и хранимые процедуры
Как уже говорилось, целостность данных часто связана с порядками и правилами в конкретной организации. Например:
· клиенты не могут размещать заказы на сумму, превышающую и
Обработка транзакций
Транзакцией называются несколько последовательных операторов SQL, которые рассматриваются как единое целое. В транзакции каждый оператор решает часть общей задачи, но для того, чтоб
Представления и работа с ними
Представлением (VIEW) называется SQL-запрос на чтение, которому присвоили имя и сохранили в БД. Представление является виртуальной таблицей, то есть обеспечивает доступ к результата
Обеспечение безопасности баз данных в SQL
Под безопасностью БД понимают защиту данных от несанкционированного чтения, изменения или уничтожения. Язык SQL позволяет индивидуально защищать как целые таблицы, так и отдельные и
Курсоры
Когда результатом выполнения запроса SQL в программном режиме является не одна строка, а целая таблица, необходимо обеспечить для прикладной программы возможность построчного получе
Динамический SQL
Рассмотренные возможности SQL реализуются в так называемом статическом SQL. В каждом встроенном операторе программист заранее указывает, на какие таблицы и столбцы он будет ссылать
Элементы языка QBE
Язык QBE (Query By Example – запрос по образцу) был разработан в компании IBM в 1975 году. Это язык реляционного исчисления с переменными на доменах, рассчитанный на работу в интера
Подходы к оптимизации запросов
Говоря про оптимизацию запросов в реляционных СУБД, обычно имеют в виду такой способ обработки, когда по начальному представлению запроса путем преобразований вырабатывается процеду
Новости и инфо для студентов