Является ли этот потенциальный цикл проблемой в моей базе данных ERD? - PullRequest
0 голосов
/ 12 марта 2019

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

My ERD

Таблицы в ERD выше - не единственные таблицы в БД, но они являются соответствующими. Просто знайте, что есть другая таблица, которая в основном "Перспективы", которая вместе с "Продавцом" определяет "Ведущий". (Не каждая перспектива превращается в лидерство.) Несмотря на мое соглашение об именах, территории не являются географическими; они полностью являются собственностью продавца, а не свойствами свинца (как они могли бы быть, если бы они были географическими). Каждый продавец может иметь от нуля до множества «территорий», но каждая из этих территорий является собственностью и не передается другим продавцам. Каждая территория потенциально «содержит» ноль ко многим отведениям, но каждое отведение может быть только на нуле или одной территории.

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

На данный момент у меня нет отношений, предлагаемых элементами красного цвета (но поле Территория есть и должно быть в таблице Leads). Каковы будут возможные опасности при добавлении этих отношений? Это кажется неполным без учета того, что Leads.Territory также должен быть на территориях.

Кроме того, возможно ли решение создать ограничение внешнего ключа для объединения? Как, например, что-то вроде "Territory REFERENCES (Salespeople JOIN Territories) ...."

Заранее спасибо за ваше терпение со мной. Я новичок в этом.

...