me ayudas a hacer una base de datos relacional en mysql para una empresa llamada import tech completa como se hace desde 0
¡Claro! Te ayudaré a crear una base de datos relacional en MySQL para una empresa llamada "Import Tech". A continuación, te presento un ejemplo de cómo estructurar la base de datos desde cero, incluyendo las tablas y sus relaciones.
1. Crear la base de datos
Primero, debes crear la base de datos en MySQL:
CREATE DATABASE import_tech; USE import_tech;
2. Crear tablas
A continuación, crearemos algunas tablas comunes para una empresa de importación. Supondré que necesitas gestionar productos, proveedores, clientes y pedidos.
Tabla: Proveedores
CREATE TABLE proveedores ( id INT AUTO_INCREMENT PRIMARY KEY, nombre VARCHAR(100) NOT NULL, telefono VARCHAR(15), email VARCHAR(100), direccion VARCHAR(255) );
Tabla: Productos
CREATE TABLE productos ( id INT AUTO_INCREMENT PRIMARY KEY, nombre VARCHAR(100) NOT NULL, descripcion TEXT, precio DECIMAL(10, 2) NOT NULL, stock INT NOT NULL, id_proveedor INT, FOREIGN KEY (id_proveedor) REFERENCES proveedores(id) );
Tabla: Clientes
CREATE TABLE clientes ( id INT AUTO_INCREMENT PRIMARY KEY, nombre VARCHAR(100) NOT NULL, telefono VARCHAR(15), email VARCHAR(100), direccion VARCHAR(255) );
Tabla: Pedidos
CREATE TABLE pedidos ( id INT AUTO_INCREMENT PRIMARY KEY, id_cliente INT, fecha_pedido DATETIME DEFAULT CURRENT_TIMESTAMP, total DECIMAL(10, 2), FOREIGN KEY (id_cliente) REFERENCES clientes(id) );
Tabla: Detalles de Pedidos
CREATE TABLE detalles_pedidos ( id INT AUTO_INCREMENT PRIMARY KEY, id_pedido INT, id_producto INT, cantidad INT NOT NULL, precio DECIMAL(10, 2) NOT NULL, FOREIGN KEY (id_pedido) REFERENCES pedidos(id), FOREIGN KEY (id_producto) REFERENCES productos(id) );
3. Insertar datos de ejemplo
Ahora que tenemos la estructura de la base de datos, podemos insertar algunos datos de ejemplo:
-- Insertar proveedores INSERT INTO proveedores (nombre, telefono, email, direccion) VALUES ('Proveedor A', '555-1234', '[email protected]', 'Calle Falsa 123'), ('Proveedor B', '555-5678', '[email protected]', 'Avenida Siempre Viva 456'); -- Insertar productos INSERT INTO productos (nombre, descripcion, precio, stock, id_proveedor) VALUES ('Producto 1', 'Descripción del producto 1', 10.50, 100, 1), ('Producto 2', 'Descripción del producto 2', 15.00, 50, 2); -- Insertar clientes INSERT INTO clientes (nombre, telefono, email, direccion) VALUES ('Cliente A', '555-9876', '[email protected]', 'Calle Verdadera 789'), ('Cliente B', '555-6543', '[email protected]', 'Boulevard Inventado 101'); -- Insertar pedidos INSERT INTO pedidos (id_cliente, total) VALUES (1, 50.00), (2, 30.00); -- Insertar detalles de pedidos INSERT INTO detalles_pedidos (id_pedido, id_producto, cantidad, precio) VALUES (1, 1, 3, 10.50), (1, 2, 1, 15.00), (2, 1, 2, 10.50);
4. Consultas de ejemplo
Finalmente, aquí tienes algunas consultas de ejemplo que podrías utilizar:
Obtener todos los productos junto a su proveedor:
SELECT p.nombre AS producto, pr.nombre AS proveedor, p.precio, p.stock FROM productos p JOIN proveedores pr ON p.id_proveedor = pr.id;
Listar todos los pedidos con detalles:
SELECT pe.id AS pedido_id, c.nombre AS cliente, dp.cantidad, p.nombre AS producto, dp.precio FROM pedidos pe JOIN clientes c ON pe.id_cliente = c.id JOIN detalles_pedidos dp ON pe.id = dp.id_pedido JOIN productos p ON dp.id_producto = p.id;
Resumen
Con esto, tienes una base de datos relacional básica para "Import Tech" con las tablas necesarias para manejar productos, proveedores, clientes y pedidos. Puedes expandir esta estructura según las necesidades específicas de tu empresa. Si tienes más preguntas o necesitas más detalles, ¡no dudes en preguntar!