ChatDiagram
1 template · ERD

Exemplos de Diagramas ER de Bancos de Dados de Ecommerce

Um diagrama ER de banco de dados de ecommerce é o projeto estrutural por trás de toda loja virtual — desde o MVP mais simples até um marketplace completo.

Standard Chen 1976 / Everest 1976 (crow's foot)Engine schematex-erdExport SVG · PNG · PDF
How to

How to use an erd template.

  1. 01Defina as entidades User e Product

    Comece com User (user_id, email, name, address) e Product (product_id, name, description, price, stock). Essas são as duas entidades centrais de qualquer esquema de ecommerce.

  2. 02Modele o relacionamento entre Order e OrderItems

    Crie Order vinculada a User (um usuário, muitos pedidos) e OrderItems como uma tabela de associação entre Order e Product. OrderItems armazena quantity e unit_price no momento da compra.

  3. 03Adicione Cart e CartItems

    Modele Cart como uma entidade de pedido temporária vinculada a User, com CartItems conectando Cart e Product. A conversão de carrinho em pedido é um fluxo essencial a ser representado.

  4. 04Inclua Payment e Shipping

    Adicione Payment vinculada a Order (payment_method, status, amount, transaction_id) e Shipping (carrier, tracking_number, estimated_delivery, status) para completar o ciclo da transação.

  5. 05Amplie com Reviews e Discounts

    Adicione uma entidade Review (user_id FK, product_id FK, rating, text, date) e uma entidade Discount ou Coupon (code, discount_type, amount, expiry) para modelar uma plataforma comercial completa.

FAQ

Questions about erd templates

Quais são as entidades principais em um banco de dados de ecommerce?

Entidades principais: User, Product, Order, OrderItems (tabela de associação), Cart, CartItems, Payment e ShippingAddress. Entidades adicionais incluem ProductVariant, Review, Category, Discount e Inventory.

Como modelo variantes de produto (tamanho, cor) em um diagrama ER?

Crie uma entidade ProductVariant vinculada a Product, com atributos para cada dimensão da variante (tamanho, cor, SKU, stock_qty, price_modifier). Em seguida, faça OrderItems e CartItems referenciarem ProductVariant em vez de Product diretamente.

Cart e Order devem ser entidades separadas?

Sim, para a maioria dos projetos. Cart é temporário (pode ser abandonado, alterado ou expirar), enquanto Order é um registro permanente da transação. Separá-los facilita a análise da taxa de abandono de carrinho e mantém a integridade do histórico de pedidos.

Como lidar com vários endereços de entrega por usuário?

Crie uma entidade Address separada, vinculada a User (um usuário, vários endereços). Depois, faça Order referenciar Address por meio de uma chave estrangeira shipping_address_id, preservando o endereço no momento da compra mesmo que o usuário atualize o perfil posteriormente.

Como modelo códigos de desconto em um esquema de ecommerce?

Crie uma entidade Discount (code, type: percentage/fixed, value, min_order_amount, expiry, max_uses). Vincule-a a Order por meio de uma FK applied_discount_id. Assim, fica registrado qual desconto foi aplicado a cada pedido no momento do checkout.