como saber quando devo usar ManyToMany, ManyToOne, OnToMany, etc?
como saber quando devo usar ManyToMany, ManyToOne, OnToMany, etc?
nao vejo muito sentindo em um produto ter mais de uma categoria!
O cardinalidade do relacionamento depende do contexto da aplicação.
Suponha uma loja virtual , e um produto como camisa de time ou seleção, e as categorias esporte,futebol,camisa, então podemos ter as seguintes situações:
relacionamento 1x1 (OneToOne) 1 camisa para 1 categoria , caso seja escolhido essa abordagem , 1 produto pode somente se associar com 1 categoria , e o contrário também , então temos:
1 camisa do brasil , 1 categoria esporte dessa forma não podemos reaproveitar a categoria esporte para nenhum outro produto
1 camisa da argentina , 1 categoria esporte argentina, teríamos que criar uma categoria do tipo "esporte" para cada produto.
relacionamento 1xN (OneToMany)
1 camisa poderá se associar com mais de uma categoria, e uma categoria pode se associar com no máximo 1 produto(Nx1 , ManyToOne): 1 camisa brasil , categoria esporte, futebol e camisa
Mas teríamos o mesmo problema citado acima , que não poderíamos reaproveitar as categorias
relacionamento NxN (ManyToMany)
Aqui teríamos as possibilidades de :
1 camisa do brasil , categoria esporte, camisa e futebol 1 camisa argentina , categoria esporte , camisa e futebol