- INSERT — agregar registros nuevos
- UPDATE — modificar registros existentes
- DELETE — eliminar registros
- Bonus: limpiar toda una tabla
Hasta ahora aprendiste a consultar datos en una base.
Pero tarde o temprano tendrás que agregar, cambiar o eliminar registros.
En esta lección veremos cómo hacerlo con tres comandos básicos de SQL:
| Operador | Qué hace |
|---|---|
INSERT |
Agrega nuevos registros |
UPDATE |
Cambia datos existentes |
DELETE |
Elimina registros |
INSERT — agregar registros nuevos
Imagina que estás creando la base de usuarios de una escuela online. Quieres guardar un nuevo usuario llamado Will Smith.
INSERT INTO users (first_name, last_name, email)
VALUES ('Will', 'Smith', 'wsmith@gmail.com');
💬 Esta consulta dice: “Agrega una nueva fila a la tabla users, con nombre Will, apellido Smith y correo wsmith@gmail.com.
| id | first_name | last_name | |
|---|---|---|---|
| 1 | Will | Smith | wsmith@gmail.com |
- Los nombres de los campos van entre paréntesis después de
INSERT INTO. - Los valores van entre paréntesis después de
VALUES. - Deben ir en el mismo orden.
UPDATE — modificar registros existentes
Ahora Will cambia su correo y quiere actualizarlo.
UPDATE users
SET email = 'will.smith@gmail.com'
WHERE first_name = 'Will' AND last_name = 'Smith';
💬 Esta consulta dice: “Actualiza el campo email solo en las filas donde el nombre sea Will y el apellido Smith.”
| id | first_name | last_name | |
|---|---|---|---|
| 1 | Will | Smith | will.smith@gmail.com |
WHERE: si lo omites, se cambiarán los correos de todos los usuarios 😱
DELETE — eliminar registros
Ups, resulta que el usuario Will pidió borrar su cuenta. Eso se hace con DELETE:
| id | first_name | last_name | |
|---|---|---|---|
| 1 | Will | Smith | will.smith@gmail.com |
DELETE FROM users
WHERE email = 'will.smith@gmail.com';
💬 Esta consulta dice: “Borra de la tabla users la fila cuyo correo sea will.smith@gmail.com.
La tabla está vacía ✅
DELETE FROM users; sin WHERE, se borrarán todos los registros. Y no hay botón de “Deshacer”
Bonus: limpiar toda una tabla
Si realmente quieres eliminar todo el contenido de una tabla, existe una forma más rápida:
TRUNCATE users;
TRUNCATE borra todos los registros de una vez. Se usa, por ejemplo, cuando necesitas reiniciar una tabla de pruebas.
Resumen
INSERT— agrega nuevos datos.UPDATE— modifica registros (usa siempreWHERE).DELETE— elimina registros (usa siempreWHERE).TRUNCATE— borra todos los datos de una tabla, sin condiciones.
Materiales adicionales
- INSERT / PostgreSQL (en inglés)
- UPDATE / PostgreSQL (en inglés)
- DELETE / PostgreSQL (en inglés)
- TRUNCATE / PostgreSQL (en inglés)
Para acceder completo a curso necesitas un plan básico
El plan básico te dará acceso completo a todos los cursos, ejercicios y lecciones de Códica, proyectos y acceso de por vida a la teoría de las lecciones completadas. La suscripción se puede cancelar en cualquier momento.