немного некорректный вопрос, примерно как "а если у вас вообще поток байт рандомный?"
Тут на самом деле надо несколько глубже копать предметную область данных - какие варианты для них допустимы и какие нет.
На каком уровне и какими средствами целесообразно поддерживать консистентность. Реляционные констрейнты это всего лишь один из способов, и не всегда он самый лучший.
возможно, я согласен что серебренной пули не существует но я предпочту строгость и на уровне базы данных если нету других предпосылок по производительности или еще чего, чем валидировать джсоны на клиенте с возможностью допустить ошибку или просто забыть провалидировать