- 1

Fundamentos de SQL y diseño de bases de datos relacionales
01:06 - 2

Separación de entidades para organizar datos en bases de datos
10:25 - 3

Qué es SQL y cuándo usarlo en lugar de Excel
15:21 - 4
Instalación de MySQL en Windows, macOS y Linux
01:51 - 5

Configuración básica cliente-servidor en MySQL
05:18 quiz de Fundamentos de Bases de datos
Inserción de datos y manejo de claves duplicadas en MySQL
Clase 15 de 24 • Curso de Fundamentos de Bases de Datos
Contenido del curso
- 6

Conceptos fundamentales de bases de datos: columnas, tuplas y relaciones
07:23 - 7

Creación de tablas básicas en MySQL con tipos de datos
13:42 - 8

Claves primarias y validaciones esenciales en tablas MySQL
16:44 - 9

Normalización y relaciones en bases de datos de tiendas
21:38 - 10

Creación visual de esquemas de bases de datos con DBML
17:24 quiz de Introducción a Bases de Datos Relacionales
- 11

Creación de tablas SQL con relaciones y llaves externas
26:04 - 12

Creación de tabla relacional con llaves foráneas en MySQL
20:49 - 13

Tipos de tablas en bases de datos relacionales: catálogo, operación, registro y archivo
12:59 - 14

Modificación de tablas MySQL con ALTER TABLE
17:35 - 15

Inserción de datos y manejo de claves duplicadas en MySQL
22:32 - 16

Creación de tablas MySQL realistas con campos únicos y timestamps
17:17 - 17

Filtrado de datos con WHERE en SQL
24:39 - 18

Comando UPDATE: modificar registros en tablas SQL
23:13 - 19

Borrado lógico y físico de datos en SQL
16:02 - 20

Uso del comando SELECT para consultas básicas en SQL
15:31 quiz de Manipulación de Datos
En esta guía aprenderás cómo insertar y gestionar registros en tablas de bases de datos usando sentencias INSERT en MySQL, incluyendo técnicas efectivas para manejar claves duplicadas con sentencias como IGNORE y ON DUPLICATE KEY UPDATE. Dominar estas acciones ayuda a mantener la integridad y coherencia de los datos según la lógica de negocio.
¿Cómo insertar registros de forma sencilla en MySQL?
El comando básico para insertar información en cualquier tabla de una base de datos es INSERT. Debemos especificar claramente los nombres de tabla, columnas y valores correspondientes:
INSERT INTO products (name, slug)
VALUES ('pluma azul', 'pluma-azul');
Al hacerlo, MySQL asigna automáticamente valores incrementales a columnas específicas (por ejemplo, product_id). Podemos insertar múltiples registros agregando más tuplas separadas por comas:
INSERT INTO products (name, slug, description)
VALUES ('pluma negra', 'pluma-negra', 'escribir'),
('pluma rosa', 'pluma-rosa', 'dibujar');
¿Qué ocurre cuando insertamos valores que rompen reglas de claves únicas?
Cada vez que intentamos insertar un valor duplicado en columnas con claves únicas (únicos), MySQL lanza un error indicando la duplicación:
INSERT INTO products (name, slug)
VALUES ('pluma roja', 'pluma-azul');
Esto produce un mensaje de error como:
Duplicate entry 'pluma-azul' for key 'products.slug'
¿Cómo ignorar errores de duplicidad?
Añadir el término IGNORE al comando permite que MySQL inserte valores y simplemente ignore errores de duplicidad, emitiendo únicamente advertencias:
INSERT IGNORE INTO products (name, slug)
VALUES ('pluma roja', 'pluma-azul');
La inserción no se realiza, pero no genera error, solo una advertencia:
0 rows affected, 1 warning
¿Cómo gestionar registros duplicados con ON DUPLICATE KEY UPDATE?
Usar ON DUPLICATE KEY UPDATE ofrece una solución más útil y profesional para gestionar conflictos de claves duplicadas. Permite actualizar información de registros existentes en lugar de intentar insertar duplicados:
INSERT INTO products (name, slug)
VALUES ('pluma azul', 'pluma-azul')
ON DUPLICATE KEY UPDATE description = 'actualizado por duplicidad';
Este método ejecuta una actualización en lugar de reportar un error o advertencia, algo especialmente útil en escenarios prácticos.
¿Cómo modificaciones automáticas usando valores existentes?
Podemos realizar operaciones lógicas usando valores previos en la misma sentencia:
INSERT INTO products (name, slug)
VALUES ('pluma azul', 'pluma-azul')
ON DUPLICATE KEY UPDATE description = CONCAT('El precio es: ', price);
Este ejemplo toma el valor anterior del campo price y lo añade al texto en description.
¿Cómo generar datos aleatorios en MySQL?
Utilizando funciones como RAND(), podemos asignar datos aleatorios fácilmente:
UPDATE products SET price = RAND() * 100;
Esto genera automáticamente valores numéricos aleatorios que facilitan pruebas en la base de datos.
¿Qué otras operaciones y técnicas con inserciones MySQL consideras útiles? ¡Comparte tu experiencia y ejemplos en los comentarios!