Я пытаюсь создать таблицы базы данных для случая, показанного ниже. У меня также есть определенная учетная запись, но это не важно в отношении моей проблемы.Могу ли я избежать цикла отношений в моей базе данных?
Существует список операций (расходов). Каждая операция может выполняться в указанной POI, места могут быть сгруппированы в цепи (необязательно). Каждая операция может иметь получателя, в частности цех магазина.
Мой текущий дизайн выглядит, как показано ниже. Я мог бы даже удалить таблицу цепочек в пользу прямой ссылки на получателя, но он все равно оставляет петлю между таблицами. Эффективно одна строка может содержать ссылки на место и учетную запись, имеющую определенный получатель.
Единственное решение, которое я могу увидеть таблицу проверочного исключить описанный случай, но мне интересно: есть ли лучше исправить?
Любые предложения по предотвращению избыточности данных в этом случае? –
Просто обычные предложения: понять основы и сделать свой анализ, затем применить разумные принципы проектирования (Пятая нормальная форма, принцип ортогонального дизайна). – sqlvogel