@ le dorfier
Вопросы целостности данных и вопросы бизнес-правил - это одно и то же (по модулю обязательно процедурные "бизнес-правила", такие как "когда вводится новый клиент, письмо с таким-то содержимым должно отправить на адрес электронной почты этого клиента).
Реляционная алгебра, как правило, считается "выразительно полной" (мне даже говорили, что есть формальное доказательство того, что RA плюс TC является завершением по Тьюрингу). Следовательно, RA (плюс TC) может выражать «все, что неправильно» (неправильно в том смысле, что оно нарушает некоторые / любые произвольные «бизнес-правила»).
Таким образом, соблюдение правила о том, что «набор неправильных вещей должен оставаться пустым» сводится к dbms, обеспечивающему каждое возможное мыслимое (связанное с данными, то есть связанное с состоянием) бизнес-правило для вас, без необходимости писать что-либо программисту. первый байт кода для достижения такого применения бизнес-правил.
Вы приводите в качестве аргумента "бизнес-правила часто меняются". Если бизнес-правила изменяются, то каков будет сценарий, который позволяет максимально быстро адаптировать систему к такому бизнес-правилу: нужно всего лишь изменить соответствующее выражение RA, которое применяет ограничение / бизнес-правило, или придется выяснить это? где в коде приложения применяется правило и нужно все это менять?
@ Брэдли Харрис.
Правильно. Я бы проголосовал, если бы голосование было доступно для меня. Но вы забываете упомянуть, что поскольку никогда не может быть действительно , можно быть уверенным, что какая-то другая база данных никогда не понадобится какому-либо другому приложению, единственное разумное место, где можно применять правила, находится внутри СУБД. .