Vocabulario de bases de datos en inglés
En esta lección
Aunque tu base de datos esté en español (clientes, pedidos), el lenguaje SQL, la documentación y los mensajes de error están en inglés. En esta lección vas a aprender las palabras que necesitas para hablar de datos, leer un error de la base de datos y entender un esquema que te pasa un compañero. Todos los mensajes de error que verás se han obtenido ejecutando SQL de verdad.
Si quieres el SQL en sí, tienes el curso completo: Introducción a SQL. Aquí nos centramos en el idioma.
La estructura: database, table, row, column
Imagina una hoja de cálculo. Una database /déitabeis/ (base de datos) es el libro entero; cada hoja es una table (tabla).
| Inglés | Pronunciación aproximada | Significado | Ejemplo |
|---|---|---|---|
| database | /déitabeis/ | base de datos | Create a new database. |
| table | /téibol/ | tabla | The users table has five columns. |
| row | /róu/ | fila (un registro) | Each row is one customer. |
| record | /récord/ | registro (sinónimo de fila) | Insert a new record. |
| column | /cólam/ (la n no se pronuncia) | columna | Add a column called email. |
| field | /fíld/ | campo (un dato concreto de una fila) | The name field is empty. |
| value | /váliu/ | valor | The value is NULL. |
| data type | /déita taip/ | tipo de dato | The column type is integer. |
| index | /índeks/ | índice, para buscar más rápido | Add an index on email. |
| constraint | /constréint/ | restricción (regla que deben cumplir los datos) | A unique constraint. |
| default | /difólt/ | valor por defecto | The default is 0. |
Fíjate: data se pronuncia /déita/ (como en inglés americano) y database /déitabeis/. En el Reino Unido suena /dáta/; ambas son válidas, pero en este curso usamos la estadounidense.
Un ejemplo de tabla, escrita como la verías en el código:
CREATE TABLE users (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
email TEXT UNIQUE
);
Se lee: “crea una tabla users con una columna id, entero y clave primaria; una columna name, texto y no nula; y una columna email, texto y única”.
Claves: primary key y foreign key
La primary key (clave primaria) identifica cada fila de forma única: normalmente una columna id. La foreign key (clave foránea o externa) es una columna que apunta a la primary key de otra tabla; así se relacionan.
| Inglés | Significado | Ejemplo |
|---|---|---|
primary key (PK) | identificador único de la fila | id en users |
foreign key (FK) | columna que referencia otra tabla | user_id en orders |
| unique | no se puede repetir | email |
| not null | obligatorio, no puede quedar vacío | name |
| auto increment | numeración automática | id sube solo |
| reference | apuntar a algo | REFERENCES users(id) |
| relationship | relación | one-to-many |
Tipos de relación:
| Inglés | Pronunciación | Significado | Ejemplo |
|---|---|---|---|
| one-to-one | /uán tu uán/ | uno a uno | persona y pasaporte |
| one-to-many | /uán tu méni/ | uno a muchos | un cliente, muchos pedidos |
| many-to-many | /méni tu méni/ | muchos a muchos | alumnos y asignaturas |
| junction table | /yánkshon/ | tabla intermedia que une dos tablas | student_courses |
Cuando rompes las reglas, la base de datos protesta. Estos son mensajes reales de SQLite:
IntegrityError: UNIQUE constraint failed: users.email
IntegrityError: NOT NULL constraint failed: users.name
IntegrityError: FOREIGN KEY constraint failed
Cómo leerlos:
| Mensaje | Qué te dice |
|---|---|
UNIQUE constraint failed: users.email | has intentado insertar un email que ya existe en la tabla users |
NOT NULL constraint failed: users.name | falta un valor en una columna obligatoria (name) |
FOREIGN KEY constraint failed | apuntas a una fila que no existe (por ejemplo, un user_id 99 sin usuario) |
Consejo: en los mensajes de error, el formato
tabla.columnate dice exactamente qué columna falla. Es la mejor pista que tienes.
Query: preguntarle a la base de datos
Una query (/cuíri/) es una consulta: una instrucción que le haces a la base de datos. La palabra se usa tanto para leer como para modificar.
| Inglés | Significado | Ejemplo |
|---|---|---|
| to query | consultar | Query the orders table. |
| query result | resultado de la consulta | The query returns three rows. |
| to select | seleccionar | SELECT name FROM users; |
| to filter | filtrar | Filter by country. |
| to sort / order by | ordenar | Sort by date. |
| to group by | agrupar | Group by city. |
| to limit | limitar el número de resultados | Limit to 10 rows. |
| aggregate function | función de agregación (COUNT, SUM, AVG) | COUNT(*) |
| clause | cláusula (WHERE, ORDER BY…) | Add a WHERE clause. |
| condition | condición | The condition is false. |
| subquery | subconsulta | Use a subquery. |
Una query completa y su lectura:
SELECT name, email
FROM users
WHERE country = 'ES'
ORDER BY name
LIMIT 10;
En inglés: “Select the name and email from the users table where the country is ES, ordered by name, limited to ten.”
Los errores típicos al escribir queries (mensajes reales):
OperationalError: no such table: usuarios
OperationalError: no such column: nombre
OperationalError: near "selec": syntax error
| Mensaje | Traducción y causa |
|---|---|
no such table: usuarios | “no existe la tabla usuarios”: nombre mal escrito o aún no creada |
no such column: nombre | “no existe la columna nombre”: quizá se llama name |
near "selec": syntax error | “cerca de selec: error de sintaxis”: letra que falta justo ahí |
Join: unir tablas
Un join une filas de dos tablas a través de una clave. Las palabras:
| Inglés | Pronunciación | Significado |
|---|---|---|
| join | /yoin/ | unión de tablas |
| inner join | /íner yoin/ | solo filas que coinciden en ambas |
| left join | /left yoin/ | todas las de la izquierda, aunque no coincidan |
| on | /on/ | la condición de unión (ON users.id = orders.user_id) |
| alias | /éilias/ | apodo corto para una tabla o columna |
| match | /mach/ | coincidencia |
SELECT users.name, orders.total
FROM users
INNER JOIN orders ON orders.user_id = users.id;
Lectura: “selecciona el nombre del usuario y el total del pedido de la tabla users, unida por la parte interior con orders, donde el user_id del pedido coincide con el id del usuario”.
Schema y migration
El schema /squíma/ o /esquíma/ (esquema) describe la estructura de la base de datos: qué tablas hay, qué columnas, qué tipos y qué relaciones. Ojo: la ch de schema suena como sk, no como “ch”: /skíma/ es lo más cercano.
Una migration (migración) es un archivo que cambia el schema de manera ordenada y reversible: “añade la columna phone a users”. Se guardan en el repositorio, así todo el equipo y el servidor tienen la misma estructura.
| Inglés | Significado | Ejemplo |
|---|---|---|
| schema | estructura de la base de datos | Export the schema. |
| migration | cambio de estructura versionado | Run the migrations. |
| to migrate | aplicar migraciones | npm run migrate |
| to roll back | deshacer la última migración | Roll back the last migration. |
| seed | datos de ejemplo para rellenar | Run the seed script. |
| backup | copia de seguridad | Take a backup first. |
| to restore | restaurar | Restore the backup. |
| dump | volcado completo de la base | Create a database dump. |
| ORM | herramienta que traduce tablas a objetos | Prisma is an ORM. |
Una migración en lenguaje sencillo:
-- 2026_10_06_add_phone_to_users
ALTER TABLE users ADD COLUMN phone TEXT;
Y cómo se comenta en un commit o una conversación: "Added a migration to store phone numbers." (“Añadí una migración para guardar números de teléfono”). Más sobre commits en Git y commits.
CRUD: las cuatro operaciones
CRUD se pronuncia /crad/ (como “crud” en inglés, rima con mud) y resume lo que haces con los datos: Create, Read, Update, Delete.
| Letra | Inglés | Significado | SQL | HTTP |
|---|---|---|---|---|
| C | Create | crear | INSERT | POST |
| R | Read | leer | SELECT | GET |
| U | Update | actualizar | UPDATE | PUT / PATCH |
| D | Delete | borrar | DELETE | DELETE |
INSERT INTO users (name, email) VALUES ('Ana', 'ana@example.com');
UPDATE users SET name = 'Ana M.' WHERE id = 1;
DELETE FROM users WHERE id = 1;
Frase típica: "Build a CRUD API for products." (“Construye una API CRUD para productos”). Significa que debe permitir crear, leer, actualizar y borrar productos. Para más vocabulario de la web, mira Vocabulario web.
Otros términos que oirás
| Inglés | Pronunciación | Significado |
|---|---|---|
| NULL | /nal/ | ausencia de valor (no es cero ni vacío) |
| transaction | /transákshon/ | conjunto de cambios que se guardan juntos o no se guardan |
| to commit | /comít/ | confirmar una transacción |
| to rollback | /róulbak/ | cancelar una transacción |
| view | /viú/ | consulta guardada con nombre |
| stored procedure | /stord prosídyur/ | procedimiento guardado en la base |
| relational database | /riléishonal/ | base de datos de tablas relacionadas |
| NoSQL | /nou-es-cu-él/ | bases de datos no tabulares (MongoDB) |
| normalization | /normalizéishon/ | organizar tablas para evitar repetición |
| duplicate | /diúplicet/ (adjetivo) | repetido |
Una conversación en el trabajo:
A: The query is too slow.
B: Did you add an index on the foreign key?
A: Not yet. I'll check the schema.
Traducción: A: la consulta es demasiado lenta. B: ¿añadiste un índice en la clave foránea? A: Todavía no. Revisaré el esquema.
Errores frecuentes
- Decir “colúmn” con la n sonando. Es /cólam/: la n final es muda.
- Confundir “row” con “line”. En una tabla, una fila es row o record; line es una línea de texto o de código.
- Traducir “record” como “récord”. Aquí record /récord/ (sustantivo) es un registro de la base de datos. El verbo to record /ricórd/ es grabar.
- Confundir “key” con “clave” genérica. Primary key es un tipo muy concreto; una contraseña es password.
- Pronunciar “SQL” mal. Tanto “es-cu-él” como “síkuel” se aceptan; se explica en Pronunciación.
- Confundir “migrate” con “move”. To migrate en bases de datos es aplicar cambios de estructura, no mover los datos de lugar (aunque también puede significarlo).
- Creer que NULL es cero.
NULLsignifica “sin valor”;0sí es un valor.
Resumen
| Idea | Inglés |
|---|---|
| Tabla, fila, columna | table, row, column |
| Identificador único / enlace a otra tabla | primary key / foreign key |
| Obligatorio / no repetido | NOT NULL / UNIQUE |
| Una consulta | query |
| Unir tablas | join |
| Estructura de la base | schema |
| Cambio de estructura versionado | migration |
| Crear, leer, actualizar, borrar | CRUD |
| La tabla no existe | no such table |
| Dato repetido en columna única | UNIQUE constraint failed |
Siguiente lección: Buscar soluciones.
Pon a prueba lo que has aprendido
¿Te ha quedado claro? Márcala y verás tu progreso en el explorador.