Мне было поручено пересмотреть схему базы данных, которую мы разработали и использовали внутри для различных систем создания билетов и отчетности. В настоящее время существует около 40 таблиц в одной схеме базы данных Oracle, поддерживающей, возможно, шесть веб-приложений.
Однако между ними есть одно объединяющее отношение: таблица комнат, описывающая комнату . Название комнаты, назначение и другие данные добавляются в общую таблицу для каждого приложения. Моя первоначальная идея состояла в том, чтобы перенести каждое из этих приложений в отдельную базу данных и выполнить соединения между данной базой данных и базой данных комнаты. Но я обнаружил, что это решение предотвращает ограничения внешнего ключа в SQL Server 2005. Кажется глупым дублировать одну таблицу для каждого приложения и синхронизировать эти несколько копий.
Должен ли я просто оставить все в одной большой БД или есть что-то еще, что я могу сделать для разделения таблиц без потери ограничений FK?