Delete numa instancia de tabela referenciada

Olá,

minha duvida eh o seguinte: eu tenho 2 tabelas no meu sistema: Project e Projecttype. Um project possui apenas um projecttype (N-1). Eu preciso fazer uma funcionalidade de deletar uma istancia da tabela projecttype, mas e se ele estiver sendo referenciada, como devo implementar isso e como devo informar ao usuário? (“Este item não pode ser deletado pois existe um projeto com este tipo”) Preciso fazer alguma constraint no banco? Estou usando o hibernate para mapeamento.

valeu

Quando você cria um relacionamento no banco, você pode especificar a ação para delete, as duas principais opção são: cascade, que exclui os filhos; restrict, que não deixa excluir o “pai”, que é o que você quer.

Então, coloque um restrict no relacionamento, que o hibernate vai lançar uma exceção.

eu devo colocar um restric no hbm do projecttype ou de project? Projecttype eh apenas uma entidade basica nao possui relacionamento nenhum. Project eh quem mantem o relacionamento a projecttype.

ou isso eh colocado numa constraint com um “alter table”?