Pasos para crear una base de datos y tablas relacionadas en MySQL
1. Crear una base de datos
- Abre la terminal e inicia sesi贸n en MySQL:
Introduce tu contrase帽a.mysql -u tu_usuario -p - Crea una nueva base de datos:
CREATE DATABASE ejemplo_db; - Selecciona la base de datos:
USE ejemplo_db;
2. Crear tres tablas relacionadas
Tabla 1: Usuarios
CREATE TABLE usuarios (
id_usuario INT AUTO_INCREMENT PRIMARY KEY,
nombre VARCHAR(50) NOT NULL,
correo VARCHAR(100) UNIQUE NOT NULL,
fecha_registro DATE NOT NULL
);
Tabla 2: Ordenes
Relacionada con usuarios mediante una clave for谩nea:
CREATE TABLE ordenes (
id_orden INT AUTO_INCREMENT PRIMARY KEY,
id_usuario INT NOT NULL,
fecha_orden DATE NOT NULL,
total DECIMAL(10, 2) NOT NULL,
FOREIGN KEY (id_usuario) REFERENCES usuarios(id_usuario)
);
Tabla 3: Productos
Relacionada con ordenes mediante una clave for谩nea:
CREATE TABLE productos (
id_producto INT AUTO_INCREMENT PRIMARY KEY,
id_orden INT NOT NULL,
nombre_producto VARCHAR(100) NOT NULL,
precio DECIMAL(10, 2) NOT NULL,
FOREIGN KEY (id_orden) REFERENCES ordenes(id_orden)
);
3. Insertar datos de ejemplo
Tabla Usuarios
INSERT INTO usuarios (nombre, correo, fecha_registro) VALUES
('Juan P茅rez', 'juan.perez@gmail.com', '2025-03-01'),
('Ana L贸pez', 'ana.lopez@gmail.com', '2025-03-02'),
('Carlos Ram铆rez', 'carlos.ramirez@gmail.com', '2025-03-03'),
('Sof铆a Morales', 'sofia.morales@gmail.com', '2025-03-04'),
('Luisa G贸mez', 'luisa.gomez@gmail.com', '2025-03-05');
Tabla Ordenes
INSERT INTO ordenes (id_usuario, fecha_orden, total) VALUES
(1, '2025-03-05', 100.50),
(2, '2025-03-06', 200.75),
(3, '2025-03-07', 150.00),
(4, '2025-03-08', 300.20),
(5, '2025-03-09', 250.00);
Tabla Productos
INSERT INTO productos (id_orden, nombre_producto, precio) VALUES
(1, 'Producto A', 50.25),
(1, 'Producto B', 50.25),
(2, 'Producto C', 200.75),
(3, 'Producto D', 150.00),
(4, 'Producto E', 300.20);
4. Verificar la estructura y los datos
- Lista las tablas:
SHOW TABLES; - Verifica la estructura de una tabla:
DESCRIBE usuarios; - Muestra los datos insertados:
SELECT * FROM usuarios; SELECT * FROM ordenes; SELECT * FROM productos;
5. Relaci贸n entre tablas
Las relaciones son las siguientes:
- usuarios: 1 usuario puede tener muchas 贸rdenes.
- ordenes: 1 orden puede tener muchos productos.
Tags
MySQL
