WikiDer > Мощность (моделирование данных)
В ведущий раздел этой статьи может потребоваться переписать. Приводится следующая причина: Нет определения во вступлении. (Октябрь 2019) (Узнайте, как и когда удалить этот шаблон сообщения) |
В мощность из присоединиться между двумя таблицами - это числовое соотношение между строками одной таблицы и строками другой. Общие мощности включают один к одному, один ко многим, и многие-ко-многим.
Например, рассмотрим базу данных электронные медицинские карты. Такая база данных может содержать следующие таблицы:
- А
врач
таблица с информацией о врачах. - А
пациент
стол для медицинских субъектов, проходящих лечение. - An
сталкиваться
таблица с записями для каждого посещения больницы.
Между этими сущностями существуют естественные отношения, такие как встреча с участием многих врачей. Существует многие-ко-многим отношения между записями в врач
и записи в пациент
потому что у врачей много пациентов, а пациенты могут посещать многих врачей. Существует один ко многим отношения между записями в пациент
и записи в сталкиваться
потому что у пациентов может быть много встреч, и в каждой встрече участвует только один пациент.
Отношения «один к одному» в основном используются для разделения таблицы на две части, чтобы предоставить информацию кратко и сделать ее более понятной. В примере с больницей такие отношения можно использовать для отделения собственной уникальной профессиональной информации врачей от административных деталей.
В моделирование данныхколлекции элементов данных группируются в «таблицы данных», которые содержат группы имен полей данных, называемые «атрибутами базы данных». Таблицы связаны «ключевыми полями». «Первичный ключ» присваивает поле своей «таблице специального заказа». Например, поле «Фамилия врача» может быть назначено в качестве первичного ключа таблицы «Доктор» со всеми людьми, имеющими одинаковую фамилию, упорядоченными в алфавитном порядке по первым трем буквам их имени. Стол также может иметь иностранный ключ что указывает на то, что это поле связано с первичным ключом другой таблицы.
Сложная модель данных может включать сотни связанных таблиц. Специалист в области информатики Эдгар Ф. Кодд создал систематический метод разложения и организации реляционные базы данных. Шаги Кодда по организации таблиц базы данных и их ключей называются нормализация базы данных, что позволяет избежать некоторых скрытых ошибок проектирования базы данных (удалить аномалии или же обновить аномалии). В реальной жизни процесс нормализации базы данных заканчивается разбиением таблиц на большее количество меньших таблиц.
В реальном мире моделирование данных имеет решающее значение, поскольку по мере роста объема данных таблицы, связанные ключами, должны использоваться для ускорения запрограммированного извлечения данных. Если модель данных плохо спроектирована, даже система компьютерных приложений с миллионом записей будет давать конечным пользователям неприемлемые задержки во времени. По этой причине моделирование данных является краеугольным камнем навыков, необходимых современному разработчику программного обеспечения.
Методы моделирования базы данных
В модель сущность – связь предлагает метод построения диаграмм сущность-взаимосвязь (ERD), которые можно использовать для сбора информации о типах сущностей модели данных, взаимосвязях и мощности элементов. А Гусиная лапка показывает один ко многим отношение. В качестве альтернативы одна линия представляет собой взаимно однозначное отношение.
Подходы к моделированию прикладных программ
В парадигме объектно-ориентированного программирования приложений, которая связана с проектированием структуры базы данных, UML диаграммы классов может использоваться для объект моделирование. В этом случае объектные отношения моделируются с использованием ассоциаций UML, а множественность используется в этих ассоциациях для обозначения мощность. Вот некоторые примеры:
Отношение | Пример | Оставили | Правильно | Повествование |
---|---|---|---|---|
Один к одному | человек ← → свидетельство о рождении | 1 | 1 | У человека должно быть собственное свидетельство о рождении |
Один к одному (необязательно с одной стороны) | человек ← → водительские права | 1 | 0..1 или же ? | У человека могут быть водительские права. |
Многие к одному | человек ← → место рождения | 1..* или же + | 1 | Многие люди могут родиться в одном месте |
Многие-ко-многим (необязательно с обеих сторон) | человек ← → книга | 0..* или же * | 0..* или же * | Человек может владеть книгами |
Один ко многим | заказ ← → позиция | 1 | 1..* или же + | В заказе есть хотя бы один товар |
Многие-ко-многим | курс ← → студент | 1..* или же + | 1..* или же + | Студенты проходят различные курсы |