Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save anonymous/ddc25f838bd8eeef3af9dd600dc3078e to your computer and use it in GitHub Desktop.
Save anonymous/ddc25f838bd8eeef3af9dd600dc3078e to your computer and use it in GitHub Desktop.
Для нормализации таблиц требуется выполнить действия

Для нормализации таблиц требуется выполнить действия



Ссылка на файл: >>>>>> http://file-portal.ru/Для нормализации таблиц требуется выполнить действия/


Нормализация структуры данных в рамках технологий 1С 8.x
Нормализация БД это:
Нормализация Базы Данных
























Для поддержания БД в устойчивом состоянии используется ряд механизмов, которые получили обобщенное название средств поддержки целостности. Приведение структуры БД в соответствие этим ограничениям - это и есть нормализация. В целом суть этих ограничений весьма проста: Следует избегать любых неоднозначностей, а также избыточности хранимой информации. Схемой базы данных называется структура связей между полями и таблицами. Нормализацией схемы базы данных называется процедура, производимая над базой данных с целью удаления в ней избыточности. Для реляционной модели данных разработано несколько нормализованных форм, три из которых являются основными. База данных считается нормализованной, если ее таблицы представлены как минимум в третьей нормальной форме. Часто многие таблицы нормализуются до четвертой нормальной формы, иногда, наоборот, производится денормализация. Использования таблиц в пятой нормальной форме в реальных базах данных встречается редко. Первая нормальная форма 1НФ говорит, что каждый атрибут отношения должен хранить атомарное значение, каждое отношение строка в таблице должно содержать одинаковое количество атрибутов столбцов , то есть требует определить первичный ключ для таблицы, то есть тот столбец или комбинацию столбцов, которые однозначно определяют каждую строку. Вторая нормальная форма 2НФ говорит, что отношение находится во второй нормальной форме, если оно находится в 1НФ, и при этом все неключевые атрибуты зависят только от первичного ключа, то есть Вторая нормальная форма требует, чтобы неключевые столбцы таблиц зависили от первичного ключа в целом, но не от его части. Если таблица находится в первой нормальной форме и первичный ключ у нее состоит из одного столбца, то она автоматически находится и во второй нормальной форме. Отношение находится в третьей нормальной форме 3НФ , если оно находится во второй нормальной форме и каждый неключевой атрибут зависит только от первичного ключа и не зависят друг от друга. Данные могут группироваться в таблицы отношения разными способами. При проектировании БД в качестве отправной точки может использоваться одно универсальное отношение , в которое включаются все необходимые атрибуты. Оно может содержать все данные, которые предполагается размещать в БД. В качестве примера рассмотрим универсальное отношение сотрудники , содержащее информацию о сотрудниках предприятия табл. Под избыточностью понимают повторение данных в разных строках одной таблицы или в разных таблицах БД. Аномалии — это проблемы, возникающие в данных из-за дефектов проектирования БД. Существуют три вида аномалий: Аномалии вставки проявляются при вводе данных в дефектную таблицу. Добавляя информацию о новом сотруднике, мы должны добавить номер и название отдела. Если ввести данные, не соответствующие имеющимся в таблице например, 42, отдел проектирования , будет не ясно, какая из строк БД содержит правильную информацию. Аномалии удаления возникают при удалении данных из дефектной схемы. Предположим, что все сотрудники отдела уволились в один и тот же день. После удаления записей этих сотрудников в БД больше не будет ни одной записи, содержащей информацию об отделе Аномалии модификации возникают при изменении данных дефектной схемы. Предположим, что отдел решили переименовать в отдел передовых технологий. Необходимо изменить соответствующие данные о каждом сотруднике отдела. Если мы пропустим хотя бы одну запись, возникнет аномалия модификации. Правилом разработки хорошей структуры БД является необходимость избегать схем с большим числом пустых атрибутов. Если мы хотим указать, что один из ста служащих имеет особую квалификацию, для хранения этой информации не следует добавлять в таблицу еще один столбец, поскольку для остальных 99 работников значением столбца будет NULL. Вместо этого следует добавить новую таблицу, в которой будут храниться только кодовые номера и информация о квалификации тех работников, которых это касается. Решение перечисленных проблем состоит в разделении данных и связей, что обеспечивается процедурой нормализации. Концепции и методы нормализации были разработаны Э. Нормализация отношений — это формальный аппарат ограничений на формирование отношений, который позволяет устранить дублирование и потенциальную противоречивость хранимых данных, уменьшает трудозатраты на ведение БД. Процесс нормализации заключается в декомпозиции исходных отношений на более простые отношения. Теория нормализации основана на наличии зависимостей между атрибутами отношения. Основными видами зависимостей являются:. Базовым является понятие функциональной зависимости , поскольку на его основе формируются определения всех остальных видов зависимостей. Атрибут В функционально зависит от атрибута А, если каждому значению А соответствует в точности одно значение В. Это означает, что во всех кортежах с одинаковым значением атрибута А атрибут В будет иметь также одно и то же значение. При этом А и В могут быть составными, то есть состоять из двух и более атрибутов. Зависимость, при которой каждый неключевой атрибут зависит от всего составного ключа и не зависит от его частей, называется полной функциональной зависимостью. Говорят, что один атрибут отношения многозначно определяет другой атрибут того же отношения, если для каждого значения первого атрибута существует множество соответствующих значений второго атрибута. Многозначные зависимости могут быть:. Каждая ступень процесса нормализации приводит схему отношений в последовательные нормальные формы. Для каждой ступени имеются наборы ограничений. Выделяют следующую последовательность нормальных форм:. Отношение находится в первой нормальной форме 1НФ , когда каждая строка содержит только одно значение для каждого атрибута столбца , то есть все атрибуты отношения имеют единственное значение являются атомарными. В столбце Квалификация ненормализованной табл. Чтобы привести схему к 1НФ, необходимо разместить в этом столбце атомарные значения. Самый простой способ заключается в выделении по одной строке на каждый элемент квалификации табл. Такое решение далеко от идеального, поскольку порождает очевидную избыточность данных — для каждой комбинации сотрудник-квалификация приходится хранить все характеристики сотрудника. Отношение находится во второй нормальной форме 2НФ , если оно находится в 1НФ, и каждый неключевой атрибут полностью функционально зависит от всех составляющих первичного ключа. Если атрибут не зависит полностью от первичного ключа, то он внесен ошибочно и должен быть удален. Нормализация производится путем нахождения существующего отношения, к которому относится данный атрибут, или созданием нового отношения, в который атрибут должен быть помещен. Первичный ключ должен уникальным образом идентифицировать каждую строку. Единственным вариантом является использование в качестве первичного ключа комбинации Код сотрудника и Квалификация. Одной из имеющихся здесь функциональных зависимостей будет: Но, кроме того, мы также имеем: Другими словами, можно определить имя, должность и отдел, используя только код сотрудника. Это значит, что указанные атрибуты функционально зависимы только от части первичного ключа, а не от всего первичного ключа. Следовательно, указанная схема не находится в 2НФ. Для приведения этой схемы в 2НФ необходимо декомпозировать исходное отношение на два, в которых все неключевые атрибуты будут полностью функционально зависеть от ключа: Отношение находится в третьей нормальной форме ЗНФ , если оно находится во 2НФ и ни один из его неключевых атрибутов не связан функциональной зависимостью с любым другим неключевым атрибутом. Атрибуты, зависящие от других неключевых атрибутов, нормализуются путем перемещения зависимого атрибута и атрибута, от которого он зависит, в новое отношение. Формально, для приведения схемы в 3НФ необходимо исключить все транзитивные зависимости. Схема отношения сотрудники табл. Первичным ключом является Код сотрудника , и все атрибуты полностью функционально зависимы от него первичный ключ определяется единственным атрибутом. При этом Номер отдела ключом не является. Для приведения в 3НФ необходимо исключить эту транзитивную зависимость, декомпозируя отношение на два: Нормальная форма Бойса-Кодда БКНФ является развитием ЗНФ и требует, чтобы в отношении были только такие функциональные зависимости, левая часть которых является потенциальным ключом отношения. Потенциальный ключ представляет собой атрибут или множество атрибутов , который может быть использован для данного отношения в качестве первичного ключа. Фактически первичный ключ — это один из потенциальных ключей, назначенный в качестве первичного. Детерминантом называется левая часть функциональной зависимости. Отношение находится в БКНФ тогда и только тогда, когда каждый детерминант отношения является потенциальным ключом. Алгоритм приведения ненормализованных схем в 3НФ показан на рис. На практике построение 3НФ в большинстве случаев является достаточным и приведением к ней процесс построения реляционной БД заканчивается. Запомнить правила нормализации помогает изречение: Отношение находится в пятой нормальной форме 5НФ , когда в каждой его полной декомпозиции все проекции содержат возможный ключ. Отношение, не имеющее ни одной полной декомпозиции, также находится в 5НФ. Четвертая нормальная форма 4НФ является частным случаем 5НФ, когда полная декомпозиция должна быть соединением ровно двух проекций. На практике непросто подобрать отношение, которое находится в 4НФ, не будучи в 5НФ. Нормализация — это процесс последовательной замены отношения его полными декомпозициями до тех пор, пока все они не будут находиться в 5НФ. Приведя отношения к БКНФ, можно с большой гарантией считать, что они находятся в 5НФ. Главное, чего мы добьемся, проведя нормализацию базы данных - это устранение или, по крайней мере, серьезное сокращение избыточности, дублирования данных. Как следствие, значительно сокращается вероятность появления противоречивых данных, облегчается администрирование базы и обновление информации в ней, сокращается объем дискового пространства. В теории баз данных говорится о том, что схема базы данных должна быть полностью нормализована. При работе с полностью нормализованными базами данных необходимо применять весьма сложные SQL-запросы, что приводит к обратному эффекту - замедлению работы базы данных. Поэтому иногда для упрощения запросов даже прибегают к обратной процедуре - денормализации. FAQ Обратная связь Вопросы и предложения. Upload Опубликованный материал нарушает ваши авторские права? Взаимодействие компонентов системы Баз данных. Уровни моделирования предметной области. Проблема сжатия больших информационных массивов. Нормализация баз данных Для поддержания БД в устойчивом состоянии используется ряд механизмов, которые получили обобщенное название средств поддержки целостности. Первая нормальная форма 1НФ говорит, что каждый атрибут отношения должен хранить атомарное значение, каждое отношение строка в таблице должно содержать одинаковое количество атрибутов столбцов , то есть запрещает повторяющиеся столбцы содержащие одинаковую по смыслу информацию запрещает множественные столбцы содержащие значения типа списка и т. Таблица 13 Код сотрудника ФИО Должность Номер отдела Наименование отдела Квалификация Иванов И. Программист Отдел проектирования C, Java Сергеева С. Администратор БД 42 Финансовый отдел DB2 Петров П. Программист Отдел проектирования VB, Java Николаев Н. Системный администратор Отдел проектирования Windows, Linux При использовании универсального отношения возникают две проблемы: Основными видами зависимостей являются: Многозначные зависимости могут быть: М ; многие-к-одному М: Выделяют следующую последовательность нормальных форм: Таблица 14 Код сотрудника ФИО Должность Номер отдела Наименование отдела Квалификация Иванов И. Программист Отдел проектирования C Иванов И. Программист Отдел проектирования Java Сергеева С. Программист Отдел проектирования VB Петров П. Системный администратор Отдел проектирования Linux Такое решение далеко от идеального, поскольку порождает очевидную избыточность данных — для каждой комбинации сотрудник-квалификация приходится хранить все характеристики сотрудника. Таблица 15 Код сотрудника ФИО Должность Номер отдела Наименование отдела Иванов И. Администратор БД 42 Финансовый отдел Петров П. Системный администратор Отдел проектирования Таблица Код сотрудника Квалификация C Java DB2 VB Java Windows Linux Отношение находится в третьей нормальной форме ЗНФ , если оно находится во 2НФ и ни один из его неключевых атрибутов не связан функциональной зависимостью с любым другим неключевым атрибутом. Таблица 17 Код сотрудника ФИО Должность Номер отдела Иванов И. Программист Сергеева С. Администратор БД 42 Петров П. Программист Таблица Номер отдела Наименование отдела 42 Финансовый отдел Отдел проектирования Нормальная форма Бойса-Кодда БКНФ является развитием ЗНФ и требует, чтобы в отношении были только такие функциональные зависимости, левая часть которых является потенциальным ключом отношения. Алгоритм приведения ненормализованных схем в 3НФ Запомнить правила нормализации помогает изречение: Нормальные формы высших порядков 4НФ и 5НФ представляют больший интерес для теоретических исследований, чем для практики проектирования БД. В них учитываются многозначные зависимости между атрибутами. Полной декомпозицией отношения называют такую совокупность произвольного числа его проекций, соединение которых позволяет получить исходное отношение. Соседние файлы в папке СУБД


Люблю тебя марина стихи
Основы html верстки
Китайская шапка спицами схема и описание
Физический факультет
Пример план работы секретаря руководителя
Гта где разбиваются
Засыпаю днем что делать
Нормализация таблиц
График работы сбербанк мирный архангельская область
Элема минск каталог
5.4. Нормализация баз данных
Схемы кукол оригами
Двигатель 409 инжектор технические характеристики
Ошибки на приоре на панели обозначение
6. Правила нормализации
Метод ньютона delphi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment