1
resposta

Duvidas Entidades Associativas

Olá, fiquei com algumas duvidas sobre esse assunto, vamos la:

  1. Toda vez que a relação for de N,M é necessário utilizar uma entidade associativa?

  2. No exemplo do video Alura+ : entidades associativas, a resolução do problema para impedir redundâncias é criar uma nova tabela, ou planilha, separando a primeira relação em 2 relações. Veja, me parece que ela não "resolveu o problema" porque as redundancias continuam existindo na nova tabela criada e também tenho visto quando se fala de banco de dados e consultas SQL uma preocupação com a complexidade das consultas ou relacionamentos para não gerar lentidão, nesse sentido, criar uma nova tabela não mais atrapalha do que ajuda?

  3. Nas aulas de Power BI verifiquei que uma boa prática quando se fala de tabelas que se relacionam é não criar relação de N para N e sim, criar uma nova tabela base que contem todo o "cadastro" com ocorrencias únicas e ligar todas as tabelas que contem essa mesma informação nessa unica tabela fonte. Quando a gente fala de entidade associativa, o que estamos fazendo na prática é isso? Criar uma nova tabela, que contenha o "cadastro" completo e ao inves de relacionar N com N, relacionar todo mundo com essa tabela cadastro em que cada item aparece uma unica vez? Ou uma coisa não tem nada a ver com a outra?

Muito Obrigado.

Gustavo Capodeferro

1 resposta

Olá, Gustavo, tudo bem?

  1. Sim, em um relacionamento muitos-para-muitos (N:M), é necessário utilizar uma entidade associativa. Isso porque um relacionamento N:M não pode ser diretamente implementado em um banco de dados relacional. A entidade associativa serve como uma ponte entre as duas tabelas, permitindo que o relacionamento seja desmembrado em dois relacionamentos um-para-muitos (1:N).

  2. Ao introduzir uma entidade associativa como "Pedidos_Livros", conseguimos evitar redundâncias ao armazenar informações específicas sobre cada pedido de livro em uma única tabela. Isso significa que cada pedido é registrado apenas uma vez na tabela "Pedidos", cada livro é registrado apenas uma vez na tabela "Livros", e a relação entre pedidos e livros, incluindo informações adicionais como quantidade, é armazenada uma vez na tabela "Pedidos_Livros".

    Quanto à complexidade das consultas, a criação de uma nova tabela pode aumentar a complexidade das consultas SQL, mas é um trade-off necessário para manter a integridade e a normalização do banco de dados. Ferramentas de otimização de consultas e índices podem ajudar a mitigar possíveis problemas de desempenho.

  3. No Power BI, é uma boa ideia ter uma tabela principal com todas as informações básicas. Você relaciona outras tabelas a essa principal para evitar confusão e repetição de dados. Isso é parecido com o que acontece quando criamos uma "entidade associativa" em bancos de dados. Essa entidade ajuda a organizar informações complexas entre outras tabelas. Então, sim, há uma semelhança entre as duas práticas. Ambas ajudam a manter as coisas simples e organizadas.

Espero ter esclarecido à sua dúvida.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!