Como estruturar um banco de dados de "Vendas"?

Boa tarde pessoal, tudo certo?

Gostaria de saber como montar um banco de dados de uma venda, essa venda pode ter vários produtos, e cada produto pode ter vários periféricos inclusos nesse produto.
(Lembrando que cada produto e cada periférico adicionado no produto deve ter a “Quantidade”)

Segue o exemplo:

Hola! Buenas tardes, que pena por la respuesta en español pero mi portugues es pesimo jaja.

Yo lo haria de la siguiente manera,

son 3 bancos de datos, la primera siendo
Periféricos:
Presumo que varios productos pueden tener los mismos periféricos entonces por eso haria un base de datos de ellos primero

los periféricos y cualquier otro dato que tiene que ver con ellos, puede ser una descripción, un numero de producto, lo que sea

y el 2 banco de datos de la siguiente manera:

Nombre del producto
Lista de periféricos
otra información si necesaria

Y el 3ro, Ventas:

Lista de productos
otra información necesaria (por ejemplo cliente, numero de pedido/venta)

Me dices si tiene sentido esto, si no, puedo crear una version de esto y compartir imagenes de los datos : )

1 Like

Salve,

A dica para prepara o banco de dados do @myfavoritelocal está bem legal.

Mas pensando em vendas, você precisa ter um fluxo de checkout. Sugiro criar uma tabela de ItemCarrinho, que irá guardar o item Produto (e suas relações com a tabela auxiliar de periféricos) e antes de fechar a venda (pagamento) crie um registro na tabela Carrinho.

Para vendas sempre tenho 2 tabelas:
ItemCarrinho - item avulsos
Carrinho - que reune os itemCarrinho

Pense que precisa ter o registro do nro de pedido, forma de pagamento, status de pagamento, nro da Nota fiscal, carrinho esta aberto ou não.

Se precisar de um suporte podemos combinar.
Confira alguns projetos que fiz


Hi,

The tip for preparing the @myfavoritelocal database is really cool.

But thinking about sales, you need to have a checkout flow. I suggest creating a Cart Item table, which will store the Product item (and its relationships with the auxiliary peripherals table) and before closing the sale (payment) create a record in the Cart table.

For sales I always have 2 tables:
ItemCart - single items
Cart - which brings together the Cart items

Consider that you need to have a record of the order number, payment method, payment status, invoice number, whether the cart is open or not.