Здесь у меня есть таблица вроде этого:Проектирование баз данных - транзитивное зависимость
Это упрощенный вариант. Предположим, что у одного клиента есть требование к услуге или нет. В этой таблице требований isServiced является двоичным значением, если это правда, мы должны позволить клиенту выбрать одну компанию поставщика услуг из таблицы поставщика (таблицы поиска), если она ложна, это означает, что клиент не хочет иметь сервис, поэтому просто оставьте ServiceCompany равным нулю.
Мой вопрос в том, что это нарушает 3-ей нормальную форму. Независимо от того, имеет ли она проблему транзитивной зависимости, которая является сервисной компанией, зависит от isServiced, зависит от требования_id.
Если у неё есть проблема, как я могу ее решить?
На самом деле, почему есть индикатор 'isServiced'? Если клиент хочет услугу, они выбирают один и вводят его в таблицу «Требование». Если они не хотят службы, не делайте никаких записей в «Требовании» вообще. – TommCatt