Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






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






В базе данных «Ремонт компьютеров» имеются такие сущности как Компьютеры, Мастера, Диагностика неисправностей, Ремонт компьютеров.

Сущность Компьютеры предназначена для ввода информации о компьютерах, поступивших в сервисный центр для ремонта и включает в себя следующие характеристики:

o Код компьютера;

o Наименование;

o Серийный номер;

o Гарантия.

Сущность Мастера предназначена для ввода информации о сотрудниках сервисного центра, которые устанавливают причину поломки и устраняют ее. Сущность включает следующие характеристики:

o Код мастера;

o Фамилия;

o Имя;

o Отчество;

o Серия и номера паспорта;

o Идентификационный код.

Сущность Диагностика неисправностей предназначена для ввода информации о причине поломки и способах ее устранения. Данная сущность содержит следующие характеристики:

o Код поломки;

o Причина поломки;

o Способы устранения поломки;

o Цена.

Сущность Ремонт компьютеров включает в себя следующие характеристики:

o Код компьютера;

o Код поломки;

o Код мастера;

o Дата начала ремонта;

o Дата конца ремонта;

o Сумма.

Рис. 1. Описание сущностей

 

В каждой таблице БД должно быть определено ключевое поле. Этот, так называемый первичный ключ, обеспечивает уникальность записей в таблице, препятствуя вводу повторяющихся данных. С помощью ключа СУБД обеспечивает быстрый поиск требуемых данных, их хранение и обработка.

В качестве первичного ключа в базах данных разрешается использовать несколько полей. Тогда уникальной должна быть комбинация значений этих полей (а значения в отдельных полях у разных записей таблицы могут совпадать).

Однако не во все таблицах могут содержаться ключевые поля, обеспечивающие уникальность записей в таблице. Поэтому очень часто для создания поля первичного ключа в таблицу добавляют суррогатный столбец. Для него устанавливают тип данных Счетчик. Это искусственно введенное поле, за уникальность которого отвечает Access. Данные в это поле добавляются автоматически при создании новой записи, чаще всего используется счетчик возрастающих чисел [3].

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

В разработанной базе данных «Ремонт компьютеров» поле Код компьютера в таблице Компьютеры является первичным ключом и связан с внешним ключом Код компьютера таблицы Ремонт компьютеров. Поле Код мастера таблицы Мастера является первичным ключом и связан с внешним ключом Код мастера таблицы Ремонт компьютеров.

В таблице Ремонт компьютеров в качестве первичного ключа используется вся совокупность полей: Код компьютера, Код мастера, Код поломки. Для обеспечения уникальности записей в таблице Ремонт компьютеров добавлено поле Код заказа, для которого установлен тип данных Счетчик.

В таблице Диагностика неисправностей поле Код поломки является первичным и обеспечивает связь с внешним ключом Код поломки таблицы Ремонт компьютеров.

Установление связей между таблицами и обеспечение целостности данных

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

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

Между таблицами могут быть установлены следующие типы связей [5]:

Связь «один-к-одному» устанавливается в случаях, когда конкретная строка главной таблицы в любой момент времени связана только с одной строкой подчиненной таблицы. Эта связь самая простая, но встречается она нечасто. Таблицы, имеющие тип связи «один-к-одному», всегда можно скомпоновать в одну.

Связь «один-ко-многим» устанавливается в случаях, когда конкретная строка главной таблицы в любой момент времени связана с несколькими строками подчиненной таблицы. При этом любая строка подчиненной таблицы связана только с одной строкой главной таблицы.

Связь «многие-ко-многим» устанавливается в случаях, когда конкретная строка главной таблицы в любой момент времени связана с несколькими строками подчиненной таблицы. Фактически такой тип связи – сложный и запутанный, и в базах данных его создавать не разрешается.

Поскольку в таблице Компьютеры для каждого компьютера отведена одна запись, то эта таблица связана с таблицей Ремонт компьютеров отношением типа «один-ко-многим» (над одним компьютером могут проводиться несколько ремонтных работ).

Поскольку один мастер может починить несколько компьютеров, между таблицами Мастера и Ремонт компьютеров установлена связь «один-ко-многим».

Таблица Диагностика неисправностей связана с таблицей Ремонт компьютеров также связью «один-ко-многим», поскольку один компьютер может иметь несколько поломок.

Целостность данных означает систему правил, используемых для поддержания связей между записями в связанных таблицах, а также обеспечивает защиту от случайного удаления или изменения связанных данных. Установить целостность данных можно, если выполнены следующие условия [4]:

o Связанное поле главной таблицы является ключевым полем или имеет уникальный индекс;

o Связанные поля имеют один тип данных;

o Таблицы принадлежат одной БД Access.

Установив целостность данных, необходимо действовать в соответствии со следующими правилами

 

o Невозможно ввести в поле внешнего ключа связанной таблицы значение, не содержащееся в ключевом поле главной таблицы;

o Не допускается удаление записи из главной таблицы, если существуют связанные с ней записи в подчиненной таблице;

o Невозможно изменить значение ключевого поля в главной таблице, если существуют записи, связанные с данным значением.

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

Рис.1. Схема данных






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.