Первый идеал: иметь «привратника», чтобы согласованность ваших данных не зависела от того, чтобы каждый разработчик применял одни и те же правила. Простая проверка, такая как проверка диапазона, может быть разумно реализована в БД. Если это изменится, по крайней мере, вы должны куда-то положить.
Проблема в том, что «бизнес-правила», как правило, становятся все более сложными. Может быть полезно перенести обработку на уровень приложений, где языки ОО могут быть лучше для управления сложной логикой.
Задача состоит в том, чтобы структурировать уровень приложения так, чтобы привратник был чистым и не дублировался.
В небольшой организации (нет администратора базы данных, значит, мало?) Я бы склонялся к тому, чтобы поместить бизнес-правила в те области, где у вас есть большой опыт разработки.
Это не исключает проведения первоначальной проверки на более высоких уровнях, например, вы можете пройти полную проверку в пользовательском интерфейсе, чтобы помочь пользователю сделать это правильно, но вы не зависите от этой начальной проверки - у вас все еще есть привратник.