Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
DIPP.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
5.8 Mб
Скачать

5.3 Определение первичных ключей

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

Выбор первичного ключа – непростая задача, решение которой может повлиять на эффективность будущей информационной системы. В одной сущности могут оказаться несколько атрибутов или наборов атрибутов, претендующих на роль первичного ключа. Такие претенденты называются потенциальными ключами. Каждая сущность должна иметь по крайней мере один потенциальный ключ [1]. Ключи могут быть сложными, т.е. содержащими несколько атрибутов.

При определении ключевых атрибутов придерживаются ряда правил:

  • Запрещается использовать в качестве ключа атрибуты, которые могут принимать более одного значения для одного и того же экземпляра сущности (правило неповторяемости);

  • Запрещается использовать в качестве ключа атрибуты, которые могут принимать более одного значения для разных экземпляров одной и той же сущности (правило уникальности);

  • Нельзя использовать атрибуты, обращающиеся в ноль, т.е. не принимающие никакого значения (правило не обращения в ноль)

  • Сущности с составными ключами не могут быть разбиты на несколько сущностей с более простыми ключами (правило наименьшего ключа).

Исходя из приведенных выше правил, выделяем в каждой сущности дополнительный атрибут, который будет являться первичным ключом – код записи в данной сущности.

Список всех первичных ключей приведён в таблице 5.3.

Таблица 5.3 - Список первичных ключей сущностей

Название сущности

Название первичного ключа

Контролируемые работы

Номер карточки

Категории важности работ

Код категории важности

Признак исполнения

Код признака исполнения

Причины переноса работ

Код причины переноса

Перенесённые работы

Номер карточки, Номер записи работы

Справочник «Предупреждающие литеры»

Код литеры

Функциональные службы

Код функциональной службы

Подразделения ГРПЗ

Номер записи PS_FS

Картотека руководителей

Номер записи PS_KRUK

Справочник «Календарь»

Номер записи календаря

Документы

Номер записи OS_DOKKL

5.4 Определение атрибутов сущностей и внешних ключей

Атрибуты – это характеристики объектов (сущностей). Основное назначение атрибута – это описание свойств сущностей, а также идентификация экземпляров сущностей.

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

Атрибут должен представлять характеристику или свойство, связанное со множеством реальных или абстрактных объектов. В свою очередь, сущность должна обладать атрибутом или комбинацией атрибутов, чьи значения однозначно определяют каждый экземпляр сущности.

Каждый атрибут может быть либо простым, либо составным. Составные атрибуты представляют собой набор простых атрибутов. Выбор способа представления атрибута в виде простого или составного определяется требова­ниями, предъявляемыми к приложению пользователем.

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

Сущности должны удовлетворять следующим условиям:

  • первой нормальной форме (сущность находится в 1НФ тогда и только тогда, когда все атрибуты содержат атомарные значения; среди атрибутов не должно встречаться повторяющихся групп, т.е. нескольких значений для каждого атрибута);

  • второй нормальной форме (сущность находится во 2НФ, если она находится в 1НФ и каждый неключевой атрибут полностью зависит от ПК (не должно быть зависимости от части ключа); 2НФ имеет смысл только для сущностей, имеющих сложный ПК);

  • третьей нормальной форме (сущность находится в ЗНФ, если она находится во 2НФ и никакой неключевой атрибут не зависит от другого не ключевого атрибута (не должно быть взаимосвязи между не ключевыми атрибутами)) [1].

Каждому выявленному атрибуту следует присвоить осмысленное имя, понятное пользователям. Атрибуты, определенные для каждой сущности, представлены в таблице 5.4.

Таблица 5.4 - Атрибуты сущностей модели

Наименование сущности

Атрибут сущности

Контролируемые работы

Номер рассыльного листа

Номер документа

Дата документа

Номер пункта

Краткое содержание

Дата постановки на контроль

Срок исполнения

Дата закрытия

Дата и время корректировки

Табельный номер

Категории важности работ

Наименование категории важности

Дата и время корректировки

Табельный номер

Признак исполнения

Наименование признака исполнения

Дата и время корректировки

Табельный номер

Причины переноса работ

Содержание причины

Дата и время корректировки

Табельный номер

Документы

Наименование документа

Код документа

Подразделения ГРПЗ

Наименование подразделения

Признак аннулированного подразделения

Функциональные службы

Код функциональной службы

Наименование функциональной службы

Картотека руководителей

Код структурного подразделения

Табельный номер

Код должности

Наименование должности

Перенесенные работы

Прежний срок исполнения

Номер документа

Дата документа

Дата и время корректировки

Табельный номер

При образовании связей в ER-модели атрибуты первичного ключа родительской сущности мигрируют в список атрибутов дочерней сущности в качестве внешнего ключа. Список внешних ключей сущностей создаваемой модели приведён в таблице 5.5.

Таблица 5.5 - Внешние ключи сущностей модели

Наименование сущности

Внешний ключ

Родительская сущность

Контролируемые работы

Код признака исполнения

Признак исполнения

Код категории важности

Категории важности работ

Номер записи OS_DOKKL

Документы

Номер записи PS_FS

Подразделения ГРПЗ

Номер записи PS_KRUK

Картотека руководителей

Код литеры

Справочник «Предупреждающие литеры»

Подразделения ГРПЗ

Код функциональной

службы

Функциональные службы

Перенесенные работы

Номер карточки

Контролируемые работы

Код причины переноса работ

Причины переноса работ

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]