Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Qual é a melhor maneira de implementar a Associação Polimórfica no SQL Server?


As duas abordagens mais comuns são Tabela por Classe (ou seja, uma tabela para a classe base e outra tabela para cada subclasse que contém as colunas adicionais necessárias para descrever a subclasse) e Tabela por Hierarquia (ou seja, todas as colunas em uma tabela, com uma ou mais colunas para permitir a discriminação de subclasses.Qual é a melhor abordagem realmente depende das particularidades de seu aplicativo e estratégia de acesso a dados.

Você teria Table Per Class em seu primeiro exemplo invertendo a direção do FK e removendo os ids extras do pai. Os outros dois são essencialmente variantes de tabela por classe.