Olá,
estou trabalhando em um modelo de dados que por contrato temos que usar exclusão lógica em algumas tabelas.
Em um cenário bem simples, posso citar como exemplo fictício uma tabela de pessoa física outra tabela de processo e uma tabela que associamos pessoas a processos.
Conheço alguns conceitos e formas de uso, com as anotações @SQLDelete e @Where por exemplo, que me possibilita fazer essa exclusão lógica de maneira simples, assim como a listagem apenas dos registros não excluídos logicamente.
A dúvida mesmo é:
No caso em que só posso "excluir" um registro da tabela "pessoafisica" se não houver nenhum registro de pessoafisica na tabela de associação "pessoafisica_processo" , como faço essa validação? Tenho que fazer essa verificação em minha regra de negócio? O problema é que a cada nova tabela que venha a surgir com esse tipo de relacionamento com a tabela de "pessoafisica", eu vou ter q alterar minha regra de negocio e verificar essa nova relação de integridade.
Enfim como a galera resolve esse problema, que acredito não ser exclusivo de minha aplicação?