Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Mapeamento de Heranca

Ola,

Se eu tenho uma Entidade Animal, e outras duas Entidades de Mamifero e Reptil, onde que essas duas herdam de Animal. Na estrategia joined, eu precisaria saber o tipo de cada registro na tabela Animal para poder fazer o join corretamente entre mamifero ou reptil, certo ?

1 resposta
solução!

Olá Eduardo,

Sim, na estratégia "joined" é necessário saber o tipo de cada registro na tabela "Animal" para fazer o join corretamente entre "Mamifero" ou "Reptil". Isso ocorre porque na estratégia "joined" cada classe filha tem sua própria tabela e o relacionamento entre elas é feito através de uma chave estrangeira que referencia a tabela pai.

Dessa forma, ao realizar uma consulta que envolva as tabelas "Mamifero" e "Reptil", é necessário fazer um join com a tabela "Animal" para obter as informações que são comuns a ambas as classes filhas.

Por exemplo, suponha que você queira obter o nome e a idade de todos os animais que são mamíferos. Nesse caso, a consulta SQL seria algo como:

SELECT a.nome, m.idade FROM Animal a JOIN Mamifero m ON a.id = m.id WHERE a.tipo = 'Mamifero'

Observe que é necessário fazer o join com a tabela "Animal" para obter o tipo de cada registro e filtrar apenas os que são mamíferos.

Espero ter ajudado e bons estudos!