Я не уверен, что понимаю проблему с доменом, но, похоже, в долгосрочной перспективе вам может пригодиться переосмысление структуры ваших таблиц.
Похоже, что "модули", такие как данные перед тестированием, на самом деле не являются вашей "базовой" единицей организации для ваших данных. Это связано с тем, что в нем есть отдельные тесты, некоторые из которых являются общими для всего модуля, другие - нет. Похоже, что каждому тесту нужна отдельная таблица с ключом, чтобы связать его с таблицей родительского модуля. В частности, тестовая таблица будет содержать записи, связанные только с конкретными c тестами. В этом случае таблица модулей будет содержать данные, уникальные для каждого модуля (только для модулей, но не для тестов, которые они содержат). Затем вы можете связать их с объединяющей таблицей ModuleTests со списком внешних ключей каждого из модулей и тестов.
Предупреждение: Похоже, это приложение для сбора данных на местах. Изменения, которые я предложил выше, безусловно, являются переломными, даже на платформе RAD. Вы должны взвесить преимущества нормализации данных и продолжительность использования приложения и то, для чего вы собираетесь использовать эти данные. Если вы используете это только для одного сезона, учебы или чего-то еще, то я сомневаюсь, что изменение структуры вашего стола будет стоить того. С другой стороны, если ваша организация будет использовать это приложение и его данные в течение многих лет, то стоит обратить на это внимание.
Дополнительная информация: https://www.amazon.com/Database-Design-Mere-Mortals-Hands/dp/0321884493
Кроме того, рискуя казаться очевидным: создайте среду тестового сервера для проверки ваших изменений. Не просто изменяйте таблицы, используемые в производстве.