generor
{ } เครื่องมือสร้าง Public

{ } JSON #11350

Modelo relacional de base de datos para sistema de ventas y domicilios

Estructura JSON que define 20 tablas para un sistema de gestión de ventas y logística de domicilios, incluyendo tipos de datos, llaves primarias, llaves foráneas e índices.

{ } วัตถุ ✓ ถูกต้อง
{
    "base_de_datos": "SistemaVentasDomicilios",
    "tablas": [
        {
            "nombre": "usuarios",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "BIGINT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "email",
                    "tipo": "VARCHAR(255)",
                    "restriccion": "UNIQUE"
                },
                {
                    "nombre": "rol",
                    "tipo": "ENUM('admin', 'cliente', 'repartidor')"
                }
            ],
            "indices": [
                "idx_email"
            ]
        },
        {
            "nombre": "perfiles",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "BIGINT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "usuario_id",
                    "tipo": "BIGINT",
                    "restriccion": "FOREIGN KEY REFERENCES usuarios(id)"
                },
                {
                    "nombre": "nombre",
                    "tipo": "VARCHAR(100)"
                }
            ]
        },
        {
            "nombre": "categorias",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "INT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "nombre",
                    "tipo": "VARCHAR(50)"
                }
            ]
        },
        {
            "nombre": "productos",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "BIGINT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "categoria_id",
                    "tipo": "INT",
                    "restriccion": "FOREIGN KEY REFERENCES categorias(id)"
                },
                {
                    "nombre": "precio",
                    "tipo": "DECIMAL(10,2)"
                }
            ],
            "indices": [
                "idx_categoria"
            ]
        },
        {
            "nombre": "pedidos",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "BIGINT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "cliente_id",
                    "tipo": "BIGINT",
                    "restriccion": "FOREIGN KEY REFERENCES usuarios(id)"
                },
                {
                    "nombre": "estado",
                    "tipo": "ENUM('pendiente', 'en_ruta', 'entregado', 'cancelado')"
                },
                {
                    "nombre": "fecha_creacion",
                    "tipo": "TIMESTAMP"
                }
            ]
        },
        {
            "nombre": "detalles_pedido",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "BIGINT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "pedido_id",
                    "tipo": "BIGINT",
                    "restriccion": "FOREIGN KEY REFERENCES pedidos(id)"
                },
                {
                    "nombre": "producto_id",
                    "tipo": "BIGINT",
                    "restriccion": "FOREIGN KEY REFERENCES productos(id)"
                }
            ]
        },
        {
            "nombre": "direcciones",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "BIGINT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "usuario_id",
                    "tipo": "BIGINT",
                    "restriccion": "FOREIGN KEY REFERENCES usuarios(id)"
                }
            ]
        },
        {
            "nombre": "pagos",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "BIGINT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "pedido_id",
                    "tipo": "BIGINT",
                    "restriccion": "FOREIGN KEY REFERENCES pedidos(id)"
                }
            ]
        },
        {
            "nombre": "repartidores",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "BIGINT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "usuario_id",
                    "tipo": "BIGINT",
                    "restriccion": "FOREIGN KEY REFERENCES usuarios(id)"
                }
            ]
        },
        {
            "nombre": "envios",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "BIGINT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "pedido_id",
                    "tipo": "BIGINT",
                    "restriccion": "FOREIGN KEY REFERENCES pedidos(id)"
                }
            ]
        },
        {
            "nombre": "inventario",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "BIGINT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "producto_id",
                    "tipo": "BIGINT",
                    "restriccion": "FOREIGN KEY REFERENCES productos(id)"
                }
            ]
        },
        {
            "nombre": "proveedores",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "INT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "nombre",
                    "tipo": "VARCHAR(100)"
                }
            ]
        },
        {
            "nombre": "productos_proveedores",
            "campos": [
                {
                    "nombre": "producto_id",
                    "tipo": "BIGINT"
                },
                {
                    "nombre": "proveedor_id",
                    "tipo": "INT"
                }
            ]
        },
        {
            "nombre": "cupones",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "INT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "codigo",
                    "tipo": "VARCHAR(20)"
                }
            ]
        },
        {
            "nombre": "reseñas",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "BIGINT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "producto_id",
                    "tipo": "BIGINT"
                }
            ]
        },
        {
            "nombre": "favoritos",
            "campos": [
                {
                    "nombre": "usuario_id",
                    "tipo": "BIGINT"
                },
                {
                    "nombre": "producto_id",
                    "tipo": "BIGINT"
                }
            ]
        },
        {
            "nombre": "notificaciones",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "BIGINT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "usuario_id",
                    "tipo": "BIGINT"
                }
            ]
        },
        {
            "nombre": "auditoria_log",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "BIGINT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "accion",
                    "tipo": "TEXT"
                }
            ]
        },
        {
            "nombre": "metodos_pago",
            "campos": [
                {
                    "nombre": "id",
                    "tipo": "INT",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "nombre",
                    "tipo": "VARCHAR(50)"
                }
            ]
        },
        {
            "nombre": "configuraciones",
            "campos": [
                {
                    "nombre": "clave",
                    "tipo": "VARCHAR(50)",
                    "restriccion": "PRIMARY KEY"
                },
                {
                    "nombre": "valor",
                    "tipo": "TEXT"
                }
            ]
        }
    ]
}
พรอมต์: generame el modelo relacional sql, para una aplicacion de ventas y domicilios, entregamelo en forma json con indices y relaciones y enumeraciones necesarias, las definiciones de las tablas y campos.al menos 20 tablas
🤖 Gemini 3.1 Flash Lite Spanish (Spain) 1 เครดิต 4.1s