1
resposta

[Dúvida] Modelagem

a titulo de estudo, estou modelando um sistema de e-commerce como MongoDB e como são anos de SQL ainda tenho duvidas como o MongoDb no mundo relacional eu tenho as tbl: tbl_clientes, tbl_produtos, tbl_maracas, tbl_pedido, tbl_detalhePedido um uma marca pode ter vários produtos, porém um produto so pode ter uma marca, cliente pode ter mais de um pedido mas um pedido só pode ter um cliente um pedido pode ter vários produtos, no Relacional e tranquilo mas no MongoDb como ficaria essa modelagem ?

1 resposta

Olá Valdecir, tudo certo?

No MongoDB, a abordagem é diferente do mundo relacional, pois utiliza um modelo de dados baseado em documentos. Vamos considerar as entidades marcas e produtos.

No MongoDB, você pode incorporar documentos dentro de outros, então podemos ter uma estrutura assim:


{
  "_id": ObjectId("..."),
  "marca": "Nome da Marca",
  "produtos": [
    {
      "nome": "Nome do Produto 1",
      "preco": 29.99,
      "descricao": "Descrição do Produto 1"
    },
    {
      "nome": "Nome do Produto 2",
      "preco": 39.99,
      "descricao": "Descrição do Produto 2"
    }
    // Outros produtos da mesma marca
  ]
}

Dessa forma, cada documento de marca contém informações sobre a marca e uma lista de produtos relacionados.

Você fará o mesmo para clientes e pedidos. Você cria uma coleção chamada clientes, onde cada documento representa um cliente, contendo um campo pedidos em formato de array.

Espero ter ajudado.

Caso surja alguma dúvida, não hesite em compartilhar no fórum.

Abraços e bons estudos!

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