generor
{ } مولّد Public

{ } JSON #11354

{ } كائن ✗ غير صالح
{
  "title": "Modelo Relacional SQL para Ventas y Domicilios",
  "description": "Este JSON define un modelo relacional completo para una aplicación de ventas y domicilios, incluyendo 20 tablas con sus respectivos campos, índices, relaciones y enumeraciones necesarias. Cada tabla representa un ente lógico de la aplicación como clientes, empleados, productos, pedidos, etc.",
  "text": [
    "{\n  \"titulo\": \"Modelo Relacional SQL para Ventas y Domicilios\",\n  \"descripcion\": \"Definición de las tablas, campos, índices y relaciones para una aplicación de ventas y entregas de productos.\",\n  \"tablas\": [\n    {\n      \"nombre\": \"clientes\",\n      \"campos\": [\n        {\"nombre\": \"cliente_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"nombre\", \"tipo\": \"VARCHAR(100)\", \"not_null\": true},\n        {\"nombre\": \"apellido\", \"tipo\": \"VARCHAR(100)\", \"not_null\": true},\n        {\"nombre\": \"correo\", \"tipo\": \"VARCHAR(150)\", \"not_null\": true, \"unique\": true},\n        {\"nombre\": \"telefono\", \"tipo\": \"CHAR(15)\", \"not_null\": true},\n        {\"nombre\": \"direccion\", \"tipo\": \"VARCHAR(255)\", \"not_null\": true}\n      ],\n      \"indices\": [\"correo\"],\n      \"relaciones\": []\n    },\n    {\n      \"nombre\": \"empleados\",\n      \"campos\": [\n        {\"nombre\": \"empleado_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"nombre\", \"tipo\": \"VARCHAR(100)\", \"not_null\": true},\n        {\"nombre\": \"apellido\", \"tipo\": \"VARCHAR(100)\", \"not_null\": true},\n        {\"nombre\": \"correo\", \"tipo\": \"VARCHAR(150)\", \"not_null\": true, \"unique\": true},\n        {\"nombre\": \"rol\", \"tipo\": \"ENUM('Administrador', 'Vendedor', 'Repartidor')\", \"not_null\": true}\n      ],\n      \"indices\": [\"correo\"],\n      \"relaciones\": []\n    },\n    {\n      \"nombre\": \"proveedores\",\n      \"campos\": [\n        {\"nombre\": \"proveedor_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"nombre_empresa\", \"tipo\": \"VARCHAR(100)\", \"not_null\": true},\n        {\"nombre\": \"contacto\", \"tipo\": \"VARCHAR(100)\", \"not_null\": true},\n        {\"nombre\": \"telefono\", \"tipo\": \"CHAR(15)\", \"not_null\": true},\n        {\"nombre\": \"correo\", \"tipo\": \"VARCHAR(150)\", \"not_null\": true, \"unique\": true}\n      ],\n      \"indices\": [\"correo\"],\n      \"relaciones\": []\n    },\n    {\n      \"nombre\": \"productos\",\n      \"campos\": [\n        {\"nombre\": \"producto_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"nombre\", \"tipo\": \"VARCHAR(100)\", \"not_null\": true},\n        {\"nombre\": \"descripcion\", \"tipo\": \"TEXT\"},\n        {\"nombre\": \"precio\", \"tipo\": \"DECIMAL(10,2)\", \"not_null\": true},\n        {\"nombre\": \"stock\", \"tipo\": \"INT\", \"not_null\": true},\n        {\"nombre\": \"categoria\", \"tipo\": \"ENUM('Alimentos', 'Bebidas', 'Ropa', 'Electrodomésticos')\", \"not_null\": true},\n        {\"nombre\": \"proveedor_id\", \"tipo\": \"INT\", \"not_null\": true}\n      ],\n      \"indices\": [\"nombre\"],\n      \"relaciones\": [{\"tabla\": \"proveedores\", \"campo\": \"proveedor_id\"}]\n    },\n    {\n      \"nombre\": \"categorias\",\n      \"campos\": [\n        {\"nombre\": \"categoria_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"nombre_categoria\", \"tipo\": \"VARCHAR(50)\", \"not_null\": true, \"unique\": true}\n      ],\n      \"indices\": [],\n      \"relaciones\": []\n    },\n    {\n      \"nombre\": \"pedidos\",\n      \"campos\": [\n        {\"nombre\": \"pedido_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"cliente_id\", \"tipo\": \"INT\", \"not_null\": true},\n        {\"nombre\": \"fecha_pedido\", \"tipo\": \"DATETIME\", \"not_null\": true},\n        {\"nombre\": \"estado\", \"tipo\": \"ENUM('Pendiente', 'En proceso', 'Entregado', 'Cancelado')\", \"not_null\": true},\n        {\"nombre\": \"total\", \"tipo\": \"DECIMAL(10,2)\", \"not_null\": true}\n      ],\n      \"indices\": [],\n      \"relaciones\": [{\"tabla\": \"clientes\", \"campo\": \"cliente_id\"}]\n    },\n    {\n      \"nombre\": \"detalles_pedido\",\n      \"campos\": [\n        {\"nombre\": \"detalle_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"pedido_id\", \"tipo\": \"INT\", \"not_null\": true},\n        {\"nombre\": \"producto_id\", \"tipo\": \"INT\", \"not_null\": true},\n        {\"nombre\": \"cantidad\", \"tipo\": \"INT\", \"not_null\": true},\n        {\"nombre\": \"precio_unitario\", \"tipo\": \"DECIMAL(10,2)\", \"not_null\": true}\n      ],\n      \"indices\": [],\n      \"relaciones\": [\n        {\"tabla\": \"pedidos\", \"campo\": \"pedido_id\"},\n        {\"tabla\": \"productos\", \"campo\": \"producto_id\"}\n      ]\n    },\n    {\n      \"nombre\": \"direcciones_entrega\",\n      \"campos\": [\n        {\"nombre\": \"direccion_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"cliente_id\", \"tipo\": \"INT\", \"not_null\": true},\n        {\"nombre\": \"direccion\", \"tipo\": \"VARCHAR(255)\", \"not_null\": true},\n        {\"nombre\": \"ciudad\", \"tipo\": \"VARCHAR(100)\", \"not_null\": true},\n        {\"nombre\": \"codigo_postal\", \"tipo\": \"CHAR(10)\", \"not_null\": true}\n      ],\n      \"indices\": [],\n      \"relaciones\": [{\"tabla\": \"clientes\", \"campo\": \"cliente_id\"}]\n    },\n    {\n      \"nombre\": \"formas_pago\",\n      \"campos\": [\n        {\"nombre\": \"forma_pago_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"nombre\", \"tipo\": \"VARCHAR(50)\", \"not_null\": true, \"unique\": true}\n      ],\n      \"indices\": [],\n      \"relaciones\": []\n    },\n    {\n      \"nombre\": \"historial_pagos\",\n      \"campos\": [\n        {\"nombre\": \"pago_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"pedido_id\", \"tipo\": \"INT\", \"not_null\": true},\n        {\"nombre\": \"forma_pago_id\", \"tipo\": \"INT\", \"not_null\": true},\n        {\"nombre\": \"monto\", \"tipo\": \"DECIMAL(10,2)\", \"not_null\": true},\n        {\"nombre\": \"fecha_pago\", \"tipo\": \"DATETIME\", \"not_null\": true}\n      ],\n      \"indices\": [],\n      \"relaciones\": [\n        {\"tabla\": \"pedidos\", \"campo\": \"pedido_id\"},\n        {\"tabla\": \"formas_pago\", \"campo\": \"forma_pago_id\"}\n      ]\n    },\n    {\n      \"nombre\": \"repartidores\",\n      \"campos\": [\n        {\"nombre\": \"repartidor_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"nombre\", \"tipo\": \"VARCHAR(100)\", \"not_null\": true},\n        {\"nombre\": \"apellido\", \"tipo\": \"VARCHAR(100)\", \"not_null\": true},\n        {\"nombre\": \"telefono\", \"tipo\": \"CHAR(15)\", \"not_null\": true},\n        {\"nombre\": \"licencia_conduccion\", \"tipo\": \"VARCHAR(50)\", \"not_null\": true},\n        {\"nombre\": \"estado\", \"tipo\": \"ENUM('Activo', 'Inactivo')\", \"not_null\": true}\n      ],\n      \"indices\": [],\n      \"relaciones\": []\n    },\n    {\n      \"nombre\": \"rutas\",\n      \"campos\": [\n        {\"nombre\": \"ruta_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"nombre_ruta\", \"tipo\": \"VARCHAR(100)\", \"not_null\": true},\n        {\"nombre\": \"ciudades\",\ \"tipo\": \"TEXT\", \"not_null\": true}\n      ],\n      \"indices\": [],\n      \"relaciones\": []\n    },\n    {\n      \"nombre\": \"entregas\",\n      \"campos\": [\n        {\"nombre\": \"entrega_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"pedido_id\", \"tipo\": \"INT\", \"not_null\": true},\n        {\"nombre\": \"repartidor_id\", \"tipo\": \"INT\", \"not_null\": true},\n        {\"nombre\": \"fecha_entrega\", \"tipo\": \"DATETIME\", \"not_null\": true},\n        {\"nombre\": \"estado\", \"tipo\": \"ENUM('Pendiente', 'En camino', 'Entregado', 'No encontrado')\", \"not_null\": true}\n      ],\n      \"indices\": [],\n      \"relaciones\": [\n        {\"tabla\": \"pedidos\", \"campo\": \"pedido_id\"},\n        {\"tabla\": \"repartidores\", \"campo\": \"repartidor_id\"}\n      ]\n    },\n    {\n      \"nombre\": \"usuarios\",\n      \"campos\": [\n        {\"nombre\": \"usuario_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"nombre_usuario\", \"tipo\": \"VARCHAR(50)\", \"not_null\": true, \"unique\": true},\n        {\"nombre\": \"contrasena\", \"tipo\": \"VARCHAR(255)\", \"not_null\": true},\n        {\"nombre\": \"rol\", \"tipo\": \"ENUM('Administrador', 'Vendedor', 'Repartidor')\", \"not_null\": true},\n        {\"nombre\": \"activo\", \"tipo\": \"BOOLEAN\", \"not_null\": true}\n      ],\n      \"indices\": [\"nombre_usuario\"],\n      \"relaciones\": []\n    },\n    {\n      \"nombre\": \"permisos\",\n      \"campos\": [\n        {\"nombre\": \"permiso_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"nombre_permiso\", \"tipo\": \"VARCHAR(100)\", \"not_null\": true, \"unique\": true}\n      ],\n      \"indices\": [],\n      \"relaciones\": []\n    },\n    {\n      \"nombre\": \"roles_permisos\",\n      \"campos\": [\n        {\"nombre\": \"rol_id\", \"tipo\": \"INT\", \"not_null\": true},\n        {\"nombre\": \"permiso_id\", \"tipo\": \"INT\", \"not_null\": true}\n      ],\n      \"indices\": [],\n      \"relaciones\": [\n        {\"tabla\": \"roles\", \"campo\": \"rol_id\"},\n        {\"tabla\": \"permisos\", \"campo\": \"permiso_id\"}\n      ]\n    },\n    {\n      \"nombre\": \"marcas\",\n      \"campos\": [\n        {\"nombre\": \"marca_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"nombre_marca\", \"tipo\": \"VARCHAR(50)\", \"not_null\": true, \"unique\": true}\n      ],\n      \"indices\": [],\n      \"relaciones\": []\n    },\n    {\n      \"nombre\": \"sucursal\",\n      \"campos\": [\n        {\"nombre\": \"sucursal_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"nombre_sucursal\", \"tipo\": \"VARCHAR(100)\", \"not_null\": true},\n        {\"nombre\": \"direccion\", \"tipo\": \"VARCHAR(255)\", \"not_null\": true},\n        {\"nombre\": \"ciudad\", \"tipo\": \"VARCHAR(100)\", \"not_null\": true}\n      ],\n      \"indices\": [],\n      \"relaciones\": []\n    },\n    {\n      \"nombre\": \"ventas\",\n      \"campos\": [\n        {\"nombre\": \"venta_id\", \"tipo\": \"INT\", \"not_null\": true, \"primary_key\": true},\n        {\"nombre\": \"sucursal_id\", \"tipo\": \"INT\", \"not_null\": true},\n        {\"nombre\": \"empleado_id\", \"tipo\": \"INT\", \"not_null\": true},\n        {\"nombre\": \"fecha_venta\", \"tipo\": \"DATETIME\", \"not_null\": true},\n        {\"nombre\": \"monto_total\", \"tipo\": \"DECIMAL(10,2)\", \"not_null\": true}\n      ],\n      \"indices\": [],\n      \"relaciones\": [\n        {\"tabla\": \"sucursal\", \"campo\": \"sucursal_id\"},\n        {\"tabla\": \"empleados\", \"campo\": \"empleado_id\"}\n      ]\n    }\n  ]\n}"
  ]
}
الموجّه: 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
Qwen Turbo Spanish (Spain) 1 رصيد 30.3s