Tutorial 17: Insertar datos en una tabla (Operación CREATE)
Objetivo: Aprender a utilizar el comando INSERT INTO para añadir registros (filas) a nuestras tablas. Poblaremos nuestra tabla usuarios con datos de ejemplo y entenderemos cómo funciona la propiedad AUTO_INCREMENT en la práctica.
Hola, ¡bienvenido de nuevo!
Ya tenemos nuestra base de datos blog_db y la tabla usuarios creada. Pero una tabla sin datos es como una biblioteca sin libros. En esta lección, vamos a darle vida insertando nuestros primeros registros usando el comando INSERT INTO.
1. La Sentencia INSERT INTO
Para añadir datos a una tabla, utilizamos el comando INSERT INTO. Vamos a hacerlo directamente en el editor de consultas (Query Editor) de MySQL Workbench.
Sintaxis básica:
INSERT INTO nombre_tabla (columna1, columna2, columna3) VALUES (valor1, valor2, valor3);
2. Insertando nuestro primer usuario
Como ya tenemos la tabla usuarios abierta (o puedes abrir una nueva pestaña de consulta haciendo clic en el icono del archivo en blanco junto a la palabra "Query"), vamos a escribir nuestra primera sentencia.
Selecciona la base de datos activa: Antes de ejecutar, asegúrate de que la base de datos
blog_dbesté seleccionada. Puedes escribir al principio del script:USE blog_db;
O hacer doble clic en
blog_dben el panel de Schemas (se pondrá en negrita).Escribe la sentencia INSERT:
INSERT INTO usuarios (nombre, email, fecha_registro) VALUES ('Juan', 'honesto_ejemplo@hotmail.com', '2024-06-01');
Explicación detallada:
INSERT INTO usuarios: Le decimos a MySQL en qué tabla vamos a insertar.(nombre, email, fecha_registro): Especificamos explícitamente las columnas para las cuales vamos a proporcionar valores. El orden aquí debe coincidir con el orden de los valores.VALUES: La palabra clave que introduce la lista de valores.('Juan', 'honesto_ejemplo@hotmail.com', '2024-06-01'): Los valores reales.Las cadenas de texto (como nombres y emails) van entre comillas simples
''.Las fechas también van entre comillas simples, en formato
'AAAA-MM-DD'.
Ejecuta la consulta: Haz clic en el botón del rayo (Execute) o presiona
Cmd + Shift + Enter.
Verás un mensaje en la sección "Output" que dice algo como: "1 row(s) affected" (1 fila afectada). ¡Felicidades, acabas de insertar tu primer registro!
3. ¿Qué pasó con user_id?
Habrás notado que no incluimos la columna user_id en nuestra lista. Esto es porque durante la creación de la tabla, marcamos user_id como AUTO_INCREMENT.
El poder del AUTO_INCREMENT: MySQL detecta que no le dimos un valor para
user_id, así que automáticamente:Revisa cuál es el valor más alto de
user_iden la tabla actual (como está vacía, asume 0).Le suma 1.
Asigna ese número (en este caso,
1) al nuevo registro.
Para comprobarlo, vamos a consultar los datos.
4. Consultando los datos con SELECT
La sentencia SELECT es la forma de leer o visualizar datos en SQL. Es la "lupa" de la base de datos.
En la misma pestaña o en una nueva, escribe:
SELECT * FROM usuarios;
SELECT *: El asterisco (*) es un comodín que significa "todas las columnas". Le decimos a MySQL: "muéstrame todo lo que hay".FROM usuarios: Le indicamos de qué tabla queremos sacar la información.
Ejecuta la consulta.
En la cuadrícula de resultados (parte inferior), verás algo así:
| user_id | nombre | fecha_registro | |
|---|---|---|---|
| 1 | Juan | honesto_ejemplo@hotmail.com | 2024-06-01 |
¡Ahí está! El user_id se generó automáticamente con el valor 1, tal como esperábamos.
5. Insertando Múltiples Registros (Bonus)
SQL nos permite insertar varias filas de una sola vez, lo cual es mucho más eficiente. Simplemente separamos los grupos de valores con comas.
INSERT INTO usuarios (nombre, email, fecha_registro) VALUES ('María', 'maria.garcia@gmail.com', '2024-06-02'), ('Carlos', 'carlos.rodriguez@yahoo.com', '2024-06-02'), ('Ana', 'ana.perez@outlook.com', '2024-06-03');
Ejecuta esta consulta. Ahora, si vuelves a ejecutar SELECT * FROM usuarios;, verás que tienes 4 filas, con user_id del 1 al 4 asignados automáticamente.
6. Buenas Prácticas y Errores Comunes
Las comillas son sagradas: Siempre usa comillas simples
''para texto y fechas. Los números (comoINT) no llevan comillas.Orden de valores: El orden en la lista de
VALUESdebe coincidir exactamente con el orden de las columnas que especificaste entre paréntesis.Evita errores de integridad: Dado que marcamos las columnas como
NOT NULL, si intentas insertar un registro sin proporcionar, por ejemplo, unnombre, MySQL te dará un error. Esto es bueno, porque protege tus datos de quedar incompletos.
Resumen de la Lección
Hoy hemos aprendido a:
Usar el comando
INSERT INTOpara añadir datos a una tabla.Confirmar que la propiedad
AUTO_INCREMENTfunciona, asignando IDs únicos de forma automática.Usar el comando
SELECT * FROMpara visualizar los datos que hemos insertado.Insertar múltiples filas en una sola operación para ser más eficientes.
Si llegaste hasta aquí, ¡te doy mis felicitaciones! Ya sabes crear bases de datos, tablas e insertar datos. En las próximas lecciones, seguiremos avanzando para aprender a modificar y eliminar datos, y a hacer consultas más complejas.
¡Nos vemos en la próxima lección!
Comentarios
Publicar un comentario