Repaso
English
Bases de datos y SQLIntermedioDB-24

Diseña el esquema de una tienda online simple (clientes, productos, pedidos).

Respuesta

  • customers(id PK, email UNIQUE, name, created_at)
  • products(id PK, sku UNIQUE, name, price_cents, stock)
  • orders(id PK, customer_id FK, status, total_cents, created_at)
  • order_items(order_id FK, product_id FK, quantity, unit_price_cents, PK(order_id, product_id)): copia el precio en el momento de la compra.
  • El dinero como céntimos enteros o DECIMAL, nunca float.
  • Índices: orders(customer_id, created_at) y las foreign keys.
  • Descuenta el stock en una transacción con una comprobación (UPDATE ... WHERE stock >= qty) para evitar vender de más.
  • Menciona soft deletes, timestamps y el estado como enum o máquina de estados.

Términos clave

Practica esta pregunta en Repaso