Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Tabela Compra_Produto

Boa tarde! Eu ainda não entendi direito o porque de ter criado uma outra entidade chamada "Compra_Produto", que fatores levaram a isso?

2 respostas
solução!

Olá Humberto,

Conforme foi falado no começo do vídeo, quando você realiza uma compra, cada item que foi comprado faz parte desta compra, se não for considerado desta maneira, cada item seria uma compra diferente, causando redundância de dados, por exemplo:

Considerando que um Cliente (João) pegou três produtos e foi para o caixa.

Tabela Cliente
|  id    |  nome  |
|   50   |  João  |

Tabela Produto
|  id   |  nome  |
|  11   | Arroz  |
|  12   | Feijão |
|  13   | Batata |

Tabela Compra
| id_compra | id_produto  | id_cliente |
|     1     |      11     |     50     |
|     2     |      12     |     50     |
|     3     |      13     |     50     |

Perceba que no exemplo acima o id_cliente se repete três vezes, gerando três compras diferentes de uma única vez. Para evitar a redundância e deixar seu banco melhor estruturado, você utiliza o conceito de muitos-para-muitos (Many-to-Many), onde você indica que em uma Compra existem vários produtos e que um Produto faz parte de várias compras, deixando suas tabelas assim:

Tabela Compra
| id_compra | id_cliente |
|     1     |     50     |

Tabela Compra_Produto
| id_compra | id_produto |
|     1     |     11     |
|     1     |     12     |
|     1     |     13     |

Da maneira acima, fica claro que o João realizou uma única Compra e nesta compra, comprou três produtos.

Espero ter esclarecido sua duvida.

Observação: reduzi as colunas das tabelas para ficar mais simples, porém considere as colunas exibidas na aula.

At., Mateus

Boa tarde!

Muito obrigado, Mateus...

Att, Humberto

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software