CodeGym /Cursos /SQL SELF /Introducción a las bases de datos

Introducción a las bases de datos

SQL SELF
Nivel 1 , Lección 0
Disponible

¡Hola a todos! Hoy arrancamos un curso brutal de SQL.

El curso está pensado para gente (¿seguro que no eres un robot?) que no tiene ni idea de SQL, pero quiere cambiar eso 🧠. Vas a empezar desde cero y acabarás aprendiendo sobre procedimientos almacenados, transacciones anidadas, triggers y cómo automatizar la creación de informes.

En el curso te esperan cientos de ejercicios prácticos que te ayudarán a conectar la teoría con el uso real de SQL. Y al final te espera un proyecto final enorme con más de 100 tablas😅.

Nuestro objetivo es que domines SQL para resolver cualquier problema con datos. Al terminar el curso, SQL será una herramienta intuitiva para ti. No tendrás que romperte la cabeza para escribir consultas, diseñar bases de datos o resolver tareas analíticas complicadas: todo te saldrá natural y rápido.

Enfoque del curso

Durante el curso, algunos temas se mencionarán por encima y luego se verán en detalle en lecciones aparte. Por ejemplo, al conocer el modelo relacional de datos, es imposible no hablar de las relaciones entre tablas. Igual, al principio veremos esquemas de bases de datos muy simples o ejemplos sin muchos detalles, para no saturar.

Este enfoque es necesario para ir aprendiendo paso a paso: para explicar un tema, muchas veces hay que dar una idea básica de otros. Así que tranqui, iremos rellenando todos los huecos a lo largo del curso.

Estructura del curso

El curso está organizado por niveles, y cada nivel tiene varias lecciones. En las lecciones encontrarás teoría, ejercicios prácticos y tests para afianzar lo aprendido.

En los primeros niveles puedes resolver todos los ejercicios directamente en la web — no hace falta instalar nada. Y después de unos niveles, instalaremos paso a paso PostgreSQL, una IDE pro y los plugins necesarios. Todo poco a poco y en orden.

¿Por qué PostgreSQL?

PostgreSQL es una base de datos top y súper popular, y nos vale para cualquier proyecto. La usan bancos, startups, tiendas, estudios de videojuegos. Con ella puedes crear desde un Instagram hasta una central nuclear que controle cafeteras. Y si algún día quieres más, después de PostgreSQL es muy fácil pasarse a algo más "pesado" como Microsoft SQL Server o incluso Oracle DB(!).

Vamos a hacer todo usando la base de datos PostgreSQL 17. ¡Y te recomiendo que hagas lo mismo!

Todo esto te espera más adelante, pero hoy empezamos desde el principio...

¿Entonces qué son esas bases de datos?

Imagina que guardas todos tus datos importantes — contraseñas, listas de la compra, números de exs y recetas favoritas — en una hoja gigante de Excel llamada "vida.xlsx"📉. Cada día esa hoja crece, va más lenta, se rompe, y en algún momento te das cuenta: toca madurar y guardar los datos en un formato más decente. Es hora de pasarse a las bases de datos.

Una base de datos no es solo una tabla. Es como Excel, pero Súper-Excel: sabe buscar, filtrar y actualizar datos rapidísimo. No le asustan los millones de filas, no se cuelga ni te dice “archivo dañado” 💔. Es como un asistente vitaminado que nunca olvida dónde guardaste el número de esa persona que conociste en el buen 2019 pre-pandemia.

¿Para qué las necesito?

— te preguntarás. ¿Y de verdad las necesito? Si yo ni las uso... ¿Seguro?

Todo en tu móvil se guarda en bases de datos. Fotos, mensajes, emails y notas — TODO está en bases de datos. Y aunque ya estés en la nube, tampoco te relajes — ahora tus datos están en la nube, pero igual en bases de datos 😬. Todo internet, todos los datos del mundo están en bases de datos. Y si eres informático, puedes ganar bien con eso 💰.

No, en serio, ¡es así! Mira:

  1. Tiendas online: cuando añades un producto al carrito, la base de datos guarda tu selección y luego pasa los datos para el pago.
  2. Redes sociales: likes, comentarios, amigos — todo eso está en bases de datos.
  3. Sistema bancario: las bases de datos permiten controlar el saldo, hacer transacciones y tener acceso instantáneo a la info.

Todo esto es posible gracias a las bases de datos, que permiten:

  • Almacenamiento: los datos no se pierden, como una caja entera de papeles.
  • Gestión: los datos están organizados, estructurados y accesibles.
  • Extracción: puedes conseguir info concreta fácil y rápido.

Elementos básicos de una base de datos

Una base de datos se construye con varios bloques básicos que vas a conocer ahora. Por ahora, vamos a compararla con tablas de Excel (¡pero mucho mejores!).

Tablas

Imagina una hoja de Excel: hay filas y columnas, todo bien organizado. Así funciona una tabla en una base de datos. La tabla es la estructura principal para guardar datos en una base de datos.

Cada tabla:

  • Tiene su propio nombre (por ejemplo, students o courses).
  • Está formada por filas y columnas.

Filas

Las filas son los registros u objetos que guardas. Una fila es un objeto/entidad, por ejemplo, la info de un estudiante.

Ejemplo de una fila en una base de datos de estudiantes:

id: 1, nombre: Alex, edad: 20, grupo: A1

Columnas

Las columnas son las propiedades o atributos del objeto. También se llaman campos. Por ejemplo:

  • id — número único del estudiante.
  • nombre — su nombre.
  • edad — edad.
  • grupo — nombre del grupo donde estudia.

Así podemos dividir los datos en partes y saber exactamente qué buscar y dónde.

Así se ve nuestra tabla students:

¿Cómo funciona esto en la práctica?

Para las hojas de Excel tenemos un programa (el propio Microsoft Excel) y sus documentos. Igual con las bases de datos. El programa de base de datos se llama DBMS (Sistema de gestión de bases de datos), y sus "documentos" son simplemente bases de datos.

La DBMS te permite:

  1. Añadir nuevas filas a las tablas (por ejemplo, un nuevo estudiante).
  2. Modificar datos en cualquier columna.
  3. Buscar información, por ejemplo: "Encuentra todos los estudiantes del grupo A1".
  4. Borrar filas si ya no hacen falta.

Proceso de trabajo con datos usando la DBMS

Tú, como usuario o desarrollador, no trabajas directamente con los archivos donde se guardan los datos. En vez de eso, formulas tu "consulta" — lo que quieres obtener o cambiar — y se la pasas a la DBMS. Normalmente se usa un lenguaje especial de consultas, y el más común es SQL, que es el que vamos a aprender. La DBMS recibe tu consulta SQL, la "entiende", accede a la base de datos, hace lo que toca y te devuelve el resultado.

Un esquema muy simple de cómo funciona una base de datos:

  1. El usuario crea una consulta.
  2. La consulta se pasa a la DBMS.
  3. La DBMS accede a la base de datos.
  4. La base de datos devuelve la info a la DBMS.
  5. La DBMS procesa los datos según la consulta.
  6. El resultado vuelve al usuario.

¿Para qué sirven las bases de datos?

A estas alturas, alguno puede pensar: "Parece solo una versión mejorada de Excel, ¿para qué complicarse tanto?"

Aquí tienes algunas razones por las que las bases de datos son necesarias:

  1. Trabajar con grandes volúmenes de datos. Imagina que tienes que gestionar datos de millones de usuarios. Excel no aguanta eso ni de broma.
  2. Acceso cómodo a la información. Si la consulta es "Encuentra todos los estudiantes mayores de 20 años del grupo A1", una base de datos lo hace en milisegundos. En Excel... suerte.
  3. Organización e integridad de los datos. Las bases de datos garantizan que la información esté organizada y sin contradicciones.
  4. Acceso multiusuario. Tú y tu colega podéis trabajar con la misma base de datos sin conflictos. Su estructura lo permite.

Imagina que creas una tienda online. Tienes que guardar info de productos (nombres, precios, categorías), de tus clientes (nombres, datos de contacto) y, por supuesto, de los pedidos (quién, qué y cuándo compró). Si intentas meter todo en una sola tabla gigante, enseguida será un caos, los datos se repetirán y será difícil encontrar o actualizar algo sin errores.

Las bases de datos ofrecen una solución más elegante: dividir la info en bloques lógicos (tablas). Cada tabla guarda datos de un tipo concreto de objeto (por ejemplo, solo productos o solo usuarios). Lo importante es que puedes relacionar esas tablas para reflejar relaciones reales, como qué usuario pidió qué producto.

¿Y para qué te sirve todo esto?

Si escribes cualquier backend o trabajas con datos — las bases de datos estarán ahí.

Y a quién le viene bien esto:

  • 💻 A los desarrolladores web — para guardar usuarios, posts, carritos y todo lo que se te ocurra.
  • 📊 A los analistas — para sacar los números que importan y hacer informes.
  • 🛠️ A los admins — para que las bases no se ralenticen ni se caigan.
  • 🧠 A los programadores — para que las apps no solo vivan, sino que sean inteligentes y dinámicas.

Y sí — en las entrevistas les encantan las bases de datos. Casi siempre te pedirán escribir una consulta SQL o explicar qué es un JOIN.

Así que, si quieres avanzar — mejor hazte colega de las bases de datos. Es una de esas skills que te hacen un desarrollador de verdad seguro de sí mismo.

Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION