UNIDAD 4
El Poder de Organizar tu Mundo:
Bases de Datos
Desde la lista de contactos en tu celular hasta el inventario de Netflix. El mundo funciona sobre bases de datos. Hoy aprenderás a crear orden a partir del caos de la información.
La vida antes de las bases de datos...
Imagina que tienes que organizar los contactos de tus amigos. Podrías anotarlos en un papel así:
Juan - celu 299... vive cerca de la plaza.
Maria (la del kiosco) - 496....
Leo (primo de Ana) - le gusta el rock. Su mail es leo@....
Funciona para 3 amigos, ¿pero para 100? ¿Y si quieres buscar a todos los que les gusta el rock? Es un caos. Es ineficiente y propenso a errores.
La Solución: Estructura y Orden
Una base de datos impone un orden. Es como pasar tus notas a una planilla prolija, donde cada pieza de información tiene su propio lugar y su propio nombre.
A esta estructura la llamamos TABLA. A las columnas (Nombre, Teléfono) las llamamos CAMPOS y a cada fila (los datos de Juan) la llamamos REGISTRO.
Construyendo la Base de Datos de CPEM N°61
Imaginemos que queremos guardar las notas de los alumnos. El primer impulso sería crear una gran tabla con todo junto. Veamos por qué eso es una mala idea.
El Enfoque Incorrecto: La "Súper Tabla"
¿Ves el problema? El nombre "Ana Pérez", el curso "2B" y el nombre "Profedotti" se repiten una y otra vez. Esto se llama redundancia. Ocupa espacio y, peor aún, ¡es una fábrica de errores! ¿Qué pasa si escribimos "Profedoti" por error en una fila? Para la base de datos, serían dos personas distintas.
La Solución Elegante: Disgregar y Relacionar
La solución es crear una tabla para cada "cosa" o "entidad" y luego conectarlas. Esto se llama Modelo Relacional. Cada registro tendrá un identificador único, una "cédula de identidad" que no se puede repetir, al que llamaremos Clave Primaria (ID).
Tabla: Alumnos
Tabla: Materias
Tabla: Profesores
↓
La Tabla Mágica: El Puente que Conecta Todo
Y ahora, creamos una tabla de "Notas" que no guarda nombres, solo los IDs. Cada ID que no es la clave primaria de esta tabla, se llama Clave Foránea, porque "viene de afuera".
Tabla: Notas
¡Magia! No hay repeticiones. Cada dato está en un solo lugar. Es eficiente, seguro y ordenado. Acabas de entender la base de casi toda la tecnología moderna.
¡Ahora te toca a ti! Diseña el Orden
Ejercicio 1: La Clave Única
En nuestra nueva tabla Alumnos, ¿qué campo usarías como Clave Primaria (ID)? ¿Por qué el nombre del alumno NO es una buena idea para ser la clave primaria?
Ejercicio 2: Diseñando la tabla "Cursos"
Siguiendo el modelo relacional, diseña la tabla para los Cursos de CPEM N°61. ¿Qué campos (columnas) le pondrías? ¿Cuál sería su Clave Primaria?
Ejercicio 3: Conectando Profesores y Cursos
Un profesor puede dar clases en varios cursos, y un curso tiene varios profesores. ¿Cómo conectarías las tablas `Profesores` y `Cursos`? Dibuja o describe la tabla "puente" que necesitarías, incluyendo sus Claves Foráneas.
Análisis de las Soluciones
Solución 1: La Clave Única
La clave primaria debería ser ID_Alumno. El nombre no es una buena idea porque puede repetirse (¡puede haber dos alumnos que se llamen "Juan Pérez" en la escuela!) y puede cambiar (un alumno podría cambiar su apellido). La clave primaria debe ser única y estable para siempre.
Solución 2: Diseñando la tabla "Cursos"
Una buena estructura para la tabla `Cursos` sería:
Solución 3: Conectando Profesores y Cursos
Como la relación es de "muchos a muchos", necesitamos una tabla intermedia. Podríamos llamarla `Asignaciones`:
Esta tabla nos dice que el profesor con ID 50 está asignado al curso con ID 201, sin repetir nombres en ningún lado.