Дом Личные финансы SQL Нормальная форма доменного ключа (DK / NF) и ненормальная форма - макеты

SQL Нормальная форма доменного ключа (DK / NF) и ненормальная форма - макеты

Оглавление:

Видео: Базы данных. Таблицы в SQL и отношения в реляционных БД: атрибуты, строки, столбцы, записи и кортежи 2025

Видео: Базы данных. Таблицы в SQL и отношения в реляционных БД: атрибуты, строки, столбцы, записи и кортежи 2025
Anonim

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

Нормальная форма доменного ключа (DK / NF)

Нормальные формы Boyce-Codd (BCNF), четвертая нормальная форма (4NF) и пятая нормальная форма (5NF) являются примерами таких форм. Каждая форма исключает возможную аномалию модификации, но не гарантирует предотвращение всех возможных аномалий модификации. Тем не менее, нормальная форма доменного ключа обеспечивает такую ​​гарантию.

Отношение находится в нормальной форме домена-домена (DK / NF) , если каждое ограничение на отношение является логическим следствием определения ключей и доменов. Ограничение в этом определении - это любое правило, достаточно точное, чтобы вы могли оценить, действительно ли оно истинно. A ключ является уникальным идентификатором строки в таблице. A домен - это набор допустимых значений атрибута.

Посмотрите на эту базу данных, которая находится в 1NF, чтобы узнать, что вы должны сделать, чтобы поместить эту базу данных в DK / NF.

Таблица: ПРОДАЖИ (Customer_ID, Product, Price)

Ключ: Customer_ID

Ограничения:

  • Customer_ID определяет Продукт

  • Продукт определяет цену

  • Клиент_ID должен быть целым числом > 1000

Чтобы принудительно использовать Constraint 3 (что Customer_ID должен быть целым числом более 1000), вы можете просто определить домен для Customer_ID для включения этого ограничения. Это делает ограничение логическим следствием домена столбца CustomerID. Продукт зависит от Customer_ID, а Customer_ID - это ключ, поэтому у вас нет проблем с Constraint 1, что является логическим следствием определения ключа.

Ограничение 2 - это проблема . Цена зависит от (является логическим следствием) продукта, а Продукт не является ключом. Решение состоит в том, чтобы разделить таблицу SALES на две таблицы. Одна таблица использует Client_ID как ключ, а другая использует Продукт как ключ. База данных, помимо того, что она находится в 3NF, также находится в DK / NF.

Создайте свои базы данных, чтобы они были в DK / NF, если это возможно. Если вы можете это сделать, принудительное ограничение ключей и доменов приведет к тому, что все ограничения будут выполнены, а аномалии модификации невозможны. Если структура базы данных предназначена для того, чтобы вы не помещали ее в DK / NF, вам необходимо создать ограничения в прикладной программе, использующей базу данных. Сама база данных не гарантирует, что ограничения будут выполнены.

Аномальная форма

Как и в жизни, поэтому в базах данных: иногда бывает ненормально окупается.Вы можете увлечься нормализацией и зайти слишком далеко. Вы можете разбить базу данных на столько таблиц, что все это становится громоздким и неэффективным. Производительность может резко упасть. Часто оптимальная структура для вашей базы данных несколько денормализуется.

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

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

SQL Нормальная форма доменного ключа (DK / NF) и ненормальная форма - макеты

Выбор редактора

Презентация Советы и рекомендации для PowerPoint 2016 - манекены

Презентация Советы и рекомендации для PowerPoint 2016 - манекены

Во время показа слайдов PowerPoint 2016 на экране, вы можете использовать клавиатуры и мыши для управления презентацией. В следующих таблицах перечислены ключи и клики, которые вы можете использовать. Клавишные трюки для слайд-шоу Чтобы это сделать, нажмите любую из этих клавиш. Отобразите следующий слайд. Ввод, пробел, страница вниз или N. Отображение, предшествующее ...

Продвигать или разлагать абзацы в PowerPoint 2007 - манекены

Продвигать или разлагать абзацы в PowerPoint 2007 - манекены

Продвижение абзаца в PowerPoint перемещает его на один уровень в контур. Чтобы продвинуть абзац на слайде PowerPoint, поместите курсор в абзац, а затем нажмите Shift + Tab или нажмите кнопку «Уменьшить список уровней» в группе «Абзац». Разбивание абзаца перемещает его на один уровень в контуре. Чтобы понизить рейтинг ...

PowerPoint 2013 для чайников Шпаргалка - манекены

PowerPoint 2013 для чайников Шпаргалка - манекены

PowerPoint 2013 - это самое мощное презентационное программное обеспечение, доступное для создания и редактирования слайдов показать презентации для работы, дома или школы. PowerPoint 2013 предлагает ряд полезных сочетаний клавиш для быстрого выполнения задач. Ниже приведены некоторые ярлыки для общего форматирования, редактирования и хранения файлов и документов PowerPoint. Кроме того, после того, как вы создали свой шедевр, вы ...

Выбор редактора

Кто святой Луки? - манекены

Кто святой Луки? - манекены

В католицизме, святой Лук, греческий врач и обратившийся в христианство, написал третье Евангелие и Деяния Апостолов на его родном языке. После его обращения он принадлежал к христианской общине в Антиохии и встретил Святого Павла. В конце концов, Люк сопровождал Павла в некоторых миссионерских путешествиях. Святой Павел физически не был ...

Кто такой святой Иуд Фаддей? - манекены

Кто такой святой Иуд Фаддей? - манекены

Джуд - арамейский для поддержки Бога. Джуд Таддеус был братом Иакова Меньше и автором новозаветного послания, названного в его честь. Послание не адресовано ни одному конкретному христианскому сообществу; скорее, это общее увещевание относительно скандального поведения некоторых новообращенных, которые не намерены следовать Господу. ...

Кто Святой Иоанн Евангелист? - манекены

Кто Святой Иоанн Евангелист? - манекены

, Согласно католической церкви, Иоанн Евангелист, Возлюбленный ученик, был самым младшим из Апостолов, а третий был принят в привилегированный внутренний круг Иисуса вместе с Сент-Джеймсом Большим и Святым . Питер. Он написал четвертое Евангелие и также известен как Иоанн Богослов для своего возвышенного богословия. Галилея ...

Выбор редактора

Типы веб-страниц в SharePoint 2010 - макеты

Типы веб-страниц в SharePoint 2010 - макеты

, Хотя SharePoint 2010 предоставляет вам множество полезных инструментов для работы с контентом, способность эффективно общаться с вашей командой, начиная с настраиваемой домашней страницы, тянет все вместе. Использование веб-страниц и веб-частей - это то, как вы размещаете и представляете информацию на сайте совместной работы. Сайты-участники используют страницы вики, чтобы сделать ...

Title Столбец в пользовательских списках SharePoint 2010 - макеты

Title Столбец в пользовательских списках SharePoint 2010 - макеты

В отличие от предопределенных списков SharePoint, ваш собственный список содержит только один столбец когда вы его сначала создадите - столбец «Название». К сожалению, вы не можете удалить столбец Title или изменить его тип данных, но вы можете переименовать или скрыть его. Чтобы переименовать столбец «Название»: выберите кнопку «Параметры списка» на вкладке «Список» в ...

Включить одобрение контента для сайтов SharePoint 2010 - манекены

Включить одобрение контента для сайтов SharePoint 2010 - манекены

По умолчанию, одобрение контента отключено в SharePoint 2010 и (обычно) любой пользователь с доступом для чтения может видеть элементы проекта в большинстве библиотек. Однако сайты, созданные с шаблоном сайта публикации, уже имеют одобрение контента в библиотеке Pages. Чтобы включить и настроить одобрение контента, выполните следующие действия: