Pular para o conteúdo

Fóruns Banco de dados Oracle Como implementar generalização em DB? Como implementar generalização em DB?

#101028
rman
Participante

    @mguedes

    Eu faria da seguinte forma, na tabela PESSOAS criar um campo TIPO_PESSOA para identificar se é funcionário ou cliente, pode ser um simples campo, ou pode ser um chave estrangeira para um tabela TIPO_PESSOA, e lá cadastrar os tipos de pessoas que podem existir. Nas tabelas FUNCIONARIOS e CLIENTES que vai o PESSOA_ID.

    Resumindo, o todo não conhece a parte, a parte que conhece o todo.

    Para trazer as informações, descubra que tipo de pessoa é primeiro, depois consulte PESSOAS com INNER JOIN FUNCIONARIOS ou PESSOAS com INNER JOIN CLIENTES.