Bases de datos relacionales con Access (Periodo III - Actividad IV)

Access

Taller: Introducción a las Bases de Datos Relacionales

Grado: Séptimo de Bachillerato

¿Qué es una Base de Datos Relacional?

Una base de datos relacional es un sistema que organiza la información en tablas conectadas entre sí. Imagina que tienes varios cuadernos donde anotas diferentes tipos de información, pero que pueden relacionarse: uno para estudiantes, otro para materias y otro para calificaciones.

Conceptos Fundamentales

Tabla: Es como una hoja de cálculo con filas y columnas donde se almacena información del mismo tipo.

Campo: Cada columna de la tabla que representa una característica específica (nombre, edad, teléfono).

Registro o Fila: Cada fila de la tabla que contiene la información completa de un elemento específico.

Sistema de Gestión de Bases de Datos (SGBD): Software que permite crear, organizar y gestionar bases de datos. Ejemplos: Microsoft Access, MySQL, SQL Server.

Relaciones entre Tablas: Las tablas se conectan mediante campos comunes, evitando repetir información innecesariamente.

Tipos de Llaves (Claves)

Las llaves o claves son campos especiales que permiten identificar registros y conectar tablas:

Clave Principal (Primary Key):

  • Campo único que identifica cada registro en una tabla
  • No puede repetirse ni estar vacío
  • Ejemplo: El número de cédula de un estudiante

Clave Foránea (Foreign Key):

  • Campo que hace referencia a la clave principal de otra tabla
  • Crea la conexión entre dos tablas
  • Puede repetirse (varios registros pueden referenciar la misma clave principal)
  • Ejemplo: En la tabla de préstamos, el ID del estudiante es una clave foránea

Clave Candidata:

  • Campo que podría servir como clave principal
  • Ejemplo: Tanto el número de cédula como el código estudiantil podrían identificar únicamente a un estudiante

Clave Compuesta:

  • Combinación de dos o más campos que juntos forman una clave única
  • Ejemplo: Fecha + Hora + Salón para identificar una clase específica

Diagrama simple de una tabla mostrando campos y registros [tomado de codigosql.top]

Ejemplo Práctico: Sistema de Biblioteca Escolar

El Problema

La biblioteca del colegio tiene cientos de libros y muchos estudiantes que los solicitan en préstamo. Actualmente usan cuadernos de papel para registrar:

  • Quién pidió prestado cada libro
  • Qué libro se llevó cada estudiante
  • Cuándo lo prestaron y cuándo lo devolvieron

Este sistema manual genera problemas: información duplicada, registros perdidos, dificultad para saber si un libro está disponible o quién lo tiene.

La Solución con Bases de Datos

Una base de datos relacional resuelve estos problemas organizando la información en tablas separadas pero conectadas:

¿Por qué necesitamos la tabla “Estudiantes”?
Porque necesitamos guardar los datos de cada estudiante una sola vez. Si un estudiante pide prestados 10 libros diferentes, no repetimos su información 10 veces, solo la guardamos una vez y la referenciamos.

¿Por qué necesitamos la tabla “Libros”?
Porque cada libro tiene información propia (título, autor, editorial) que no debe repetirse. Un mismo libro puede ser prestado muchas veces a diferentes estudiantes, pero su información básica permanece igual.

¿Por qué necesitamos la tabla “Préstamos”?
Porque conecta estudiantes con libros en cada transacción. Registra QUIÉN pidió prestado QUÉ libro y CUÁNDO. Esta tabla crea la relación entre las otras dos.

¿Por qué NO usar una sola tabla gigante?

Imagina que guardáramos todo en una sola tabla llamada “Todo_Biblioteca”:

Nombre_Estudiante Grado Teléfono Título_Libro Autor Editorial Fecha_Préstamo
María González 7A 301-555-0123 Cien años de soledad García Márquez Sudamericana 15/08/2025
María González 7A 301-555-0123 El Principito Saint-Exupéry Salamandra 20/08/2025
Carlos López 7B 300-444-0156 Cien años de soledad García Márquez Sudamericana 18/08/2025

Problemas de esta tabla única:

  • Repetición masiva: Los datos de María se repiten en cada préstamo
  • Desperdicio de espacio: La base de datos crece innecesariamente
  • Errores de digitación: Al escribir “María González” 50 veces, es fácil equivocarse
  • Actualizaciones complicadas: Si María cambia de teléfono, hay que buscar y cambiar TODOS sus registros
  • Inconsistencias: Podríamos tener “María González” en un registro y “Maria Gonzalez” en otro

Ventajas del Diseño con Múltiples Tablas:

  • Sin duplicación: Los datos del estudiante se guardan una sola vez
  • Fácil actualización: Si cambia el teléfono de un estudiante, se modifica en un solo lugar
  • Consistencia garantizada: No hay riesgo de tener información contradictoria
  • Menor espacio: La base de datos ocupa menos memoria y es más rápida
  • Consultas eficientes: El sistema encuentra información más rápidamente
  • Mantenimiento simple: Es más fácil agregar, modificar o eliminar información
  • Escalabilidad: Puede crecer fácilmente cuando aumenten estudiantes y libros

Vamos a crear un sistema para gestionar los préstamos de libros en la biblioteca del colegio. Necesitaremos tres tablas relacionadas:

Tabla “Estudiantes”

  • ID_Estudiante (clave principal)
  • Nombre
  • Apellido
  • Grado
  • Teléfono

Tabla “Libros”

  • ID_Libro (clave principal)
  • Título
  • Autor
  • Editorial
  • Año_Publicación

Tabla “Préstamos”

  • ID_Préstamo (clave principal)
  • ID_Estudiante (clave foránea)
  • ID_Libro (clave foránea)
  • Fecha_Préstamo
  • Fecha_Devolución

Cómo se Relacionan las Tablas

Las tablas se conectan mediante llaves o claves que actúan como puentes entre ellas:

Relación Estudiantes ↔ Préstamos:

  • La clave principal “ID_Estudiante” de la tabla Estudiantes se conecta con
  • La clave foránea “ID_Estudiante” de la tabla Préstamos
  • Esta relación nos dice: “¿Qué estudiante hizo este préstamo?”

Relación Libros ↔ Préstamos:

  • La clave principal “ID_Libro” de la tabla Libros se conecta con
  • La clave foránea “ID_Libro” de la tabla Préstamos
  • Esta relación nos dice: “¿Qué libro se prestó en esta transacción?”

Ejemplo de Cómo Funciona:

Si queremos saber “¿Qué libros tiene prestados María González?”, el sistema:

  1. Busca en la tabla Estudiantes: María González tiene ID_Estudiante = 1
  2. Encuentra en la tabla Préstamos todos los registros donde ID_Estudiante = 1
  3. Obtiene los ID_Libro de esos préstamos (ejemplo: ID_Libro = 5 y 12)
  4. Consulta la tabla Libros para los ID 5 y 12
  5. Muestra los títulos: “Cien años de soledad” y “El Principito”

Reglas de las Relaciones:

Relación Uno a Muchos (1:N): Estudiantes → Préstamos
Un estudiante puede tener muchos préstamos, pero cada préstamo pertenece a un solo estudiante.

Tabla Estudiantes:

ID_Estudiante Nombre Grado
1 María González 7A
2 Carlos López 7B

Tabla Préstamos:

ID_Préstamo ID_Estudiante ID_Libro Fecha_Préstamo
101 1 5 15/08/2025
102 1 12 16/08/2025
103 1 8 20/08/2025
104 2 5 18/08/2025

Observa: María (ID=1) tiene 3 préstamos diferentes, pero cada préstamo pertenece solo a ella.

Relación Uno a Muchos (1:N): Libros → Préstamos
Un libro puede ser prestado muchas veces, pero cada préstamo involucra un solo libro.

Tabla Libros:

ID_Libro Título Autor
5 Cien años de soledad García Márquez
8 El Principito Saint-Exupéry
12 Harry Potter J.K. Rowling

Tabla Préstamos:

ID_Préstamo ID_Estudiante ID_Libro Fecha_Préstamo
101 1 5 15/08/2025
104 2 5 18/08/2025
105 3 5 22/08/2025

Observa: El libro “Cien años de soledad” (ID=5) fue prestado 3 veces a diferentes estudiantes.

Relación Uno a Uno (1:1)
Cada registro de una tabla se relaciona con exactamente un registro de otra tabla. Ejemplo: Cada estudiante tiene exactamente un carné estudiantil único.

Tabla Estudiantes:

ID_Estudiante Nombre
1 María González
2 Carlos López

Tabla Carnés:

ID_Carné ID_Estudiante Código_Barras
501 1 789456123
502 2 789456124

Observa: Cada estudiante tiene exactamente un carné, y cada carné pertenece a exactamente un estudiante.

Relación Muchos a Muchos (N:N)
Muchos registros de una tabla se pueden relacionar con muchos registros de otra tabla. Ejemplo: Estudiantes y Materias (un estudiante puede cursar varias materias, y una materia puede ser cursada por varios estudiantes). Requiere una tabla intermedia.

Tabla Estudiantes:

ID_Estudiante Nombre
1 María González
2 Carlos López

Tabla Materias:

ID_Materia Nombre_Materia
10 Matemáticas
11 Español

Tabla Inscripciones (tabla intermedia):

ID_Inscripción ID_Estudiante ID_Materia Nota
201 1 10 4.5
202 1 11 4.8
203 2 10 4.2
204 2 11 4.0

Observa: María cursa Matemáticas y Español. Carlos también cursa ambas materias. Cada materia es cursada por varios estudiantes.

Integridad Referencial:

  • Incorrecto: No se puede crear un préstamo con ID_Estudiante = 99 si no existe ese estudiante
  • Incorrecto: No se puede crear un préstamo con ID_Libro = 150 si no existe ese libro
  • Correcto: Solo se pueden crear préstamos para estudiantes y libros que existan en sus respectivas tablas

Diagrama de relaciones entre las tres tablas [Creación propia]

¿Qué es Microsoft Access?

Microsoft Access es un Sistema de Gestión de Bases de Datos (SGBD) que forma parte del paquete Microsoft Office. Es como un programa especializado para crear y manejar bases de datos de manera sencilla.

Características de Microsoft Access:

  • Interfaz gráfica amigable: No necesitas escribir código complicado, todo se hace con ventanas y botones
  • Integración con Office: Se conecta fácilmente con Word, Excel y PowerPoint
  • Para proyectos pequeños y medianos: Ideal para empresas, colegios o proyectos personales
  • Base de datos local: Los archivos se guardan en tu computador (archivos .accdb)

Diferencias con otros SGBD:

Característica Microsoft Access MySQL/SQL Server Excel
Uso principal Bases de datos pequeñas y medianas Bases de datos grandes empresariales Hojas de cálculo
Usuarios simultáneos Hasta 255 usuarios Miles de usuarios Pocos usuarios
Facilidad de uso Muy fácil (interfaz gráfica) Requiere conocimientos técnicos Fácil para cálculos
Relaciones entre datos Automáticas y visuales Requiere programación SQL Limitadas
Costo Incluido en Office Varía (MySQL es gratuito) Incluido en Office

¿Por qué usamos Access en este taller?

  • Es visual e intuitivo: Perfecto para aprender conceptos básicos
  • Está disponible en el colegio: Parte del paquete Office educativo
  • No requiere programación: Podemos crear bases de datos sin escribir código
  • Resultados rápidos: En pocas clases tendremos una base de datos funcionando

Captura de pantalla de la interfaz principal de Microsoft Access [Creación propia]

Creando la Base de Datos en Microsoft Access

Paso 1: Crear la Base de Datos

  1. Abre Microsoft Access
  2. Selecciona “Base de datos en blanco”
  3. Asigna el nombre “Biblioteca_Escolar”
  4. Haz clic en “Crear”

Paso 2: Crear la Tabla “Estudiantes”

  1. En la pestaña “Crear”, selecciona “Diseño de tabla”
  2. Define los campos:
Nombre del Campo Tipo de Datos Descripción
ID_Estudiante Autonumeración Identificador único
Nombre Texto corto Nombre del estudiante
Apellido Texto corto Apellido del estudiante
Grado Texto corto Grado que cursa
Teléfono Texto corto Número de contacto
  1. Selecciona “ID_Estudiante” y marca como clave principal (botón con llave dorada)
  2. Guarda la tabla con el nombre “Estudiantes”

Paso 3: Crear la Tabla “Libros”

Repite el proceso anterior con estos campos:

Nombre del Campo Tipo de Datos Descripción
ID_Libro Autonumeración Identificador único
Título Texto corto Título del libro
Autor Texto corto Autor del libro
Editorial Texto corto Casa editorial
Año_Publicación Número Año de publicación

Paso 4: Crear la Tabla “Préstamos”

Nombre del Campo Tipo de Datos Descripción
ID_Préstamo Autonumeración Identificador único
ID_Estudiante Número Referencia al estudiante
ID_Libro Número Referencia al libro
Fecha_Préstamo Fecha/Hora Cuándo se prestó
Fecha_Devolución Fecha/Hora Cuándo se devolvió

Tipos de Datos en Access

  • Autonumeración: Genera números automáticamente (ideal para claves principales)
  • Texto corto: Hasta 255 caracteres (nombres, títulos)
  • Texto largo: Más de 255 caracteres (descripciones extensas)
  • Número: Valores numéricos (cantidades, edades)
  • Fecha/Hora: Fechas y horarios
  • Moneda: Valores monetarios
  • Sí/No: Valores verdadero/falso

Claves Principales y Foráneas

Clave Principal: Campo único que identifica cada registro en una tabla. No puede repetirse ni estar vacío.

Clave Foránea: Campo que hace referencia a la clave principal de otra tabla, creando la relación entre tablas.

Captura de pantalla del diseño de tabla en Access [Creación propia]

Guardar las Tablas

  1. Presiona Ctrl+S o usa el menú Archivo > Guardar
  2. Asigna un nombre descriptivo a cada tabla
  3. Access guardará automáticamente la estructura

Actividad Práctica

Problema: El colegio necesita un sistema para gestionar su cafetería escolar, registrando estudiantes, productos disponibles y las compras realizadas.

Requerimientos:

Crea una base de datos llamada “Cafetería_Escolar” con las siguientes tablas:

Tabla “Estudiantes_Cafetería”

Campo Tipo de Dato Clave Ejemplo
ID_Estudiante Autonumeración Clave Principal 1
Nombre_Completo Texto corto Juan Pérez
Grado Texto corto 7A
Saldo_Disponible Moneda $15,000

Tabla “Productos”

Campo Tipo de Dato Clave Ejemplo
ID_Producto Autonumeración Clave Principal 1
Nombre_Producto Texto corto Empanada
Precio Moneda $2,500
Categoría Texto corto Comida

Tabla “Ventas”

Campo Tipo de Dato Clave Ejemplo
ID_Venta Autonumeración Clave Principal 1
ID_Estudiante Número Clave Foránea → Estudiantes_Cafetería 1
ID_Producto Número Clave Foránea → Productos 1
Fecha_Venta Fecha/Hora 15/08/2025
Cantidad Número 2

Relaciones entre las Tablas:

  • Estudiantes_Cafetería (1) ↔ Ventas (N): Un estudiante puede realizar muchas compras, pero cada venta pertenece a un solo estudiante.
  • Productos (1) ↔ Ventas (N): Un producto puede venderse muchas veces, pero cada venta involucra un solo producto.
  • Clave de conexión: La tabla “Ventas” actúa como tabla intermedia conectando estudiantes con productos a través de las claves foráneas ID_Estudiante e ID_Producto.

Diagrama de relaciones de la cafetería escolar [Creación propia]

Datos para Ingresar:

Estudiantes (mínimo 5):

  • María González, 7B, $20,000
  • Carlos Rodríguez, 7A, $18,500
  • Ana Martínez, 7C, $12,000

Productos (mínimo 8):

  • Jugo Natural, $3,000, Bebida
  • Sándwich, $4,500, Comida
  • Galletas, $1,500, Snack

Ventas (mínimo 10 registros)

Entrega:

Envía por correo electrónico el archivo .accdb con:

  • Las tres tablas creadas
  • Todos los datos solicitados ingresados
  • Relaciones establecidas entre las tablas

Rúbrica de Evaluación

Criterio Excelente (5.0) Sobresaliente (4.5) Satisfactorio (4.0) Básico (3.5) Insuficiente (3.0)
Estructura de Tablas Tablas perfectamente estructuradas con campos apropiados y tipos de datos correctos Tablas bien estructuradas con campos apropiados y tipos de datos mayormente correctos Tablas estructuradas con algunos errores menores en campos o tipos de datos Tablas con estructura básica pero con varios errores en campos o tipos de datos Tablas mal estructuradas o incompletas
Claves y Relaciones Claves principales y foráneas correctamente definidas, relaciones establecidas Claves mayormente correctas, relaciones establecidas con errores menores Claves definidas con algunos errores, relaciones básicas establecidas Claves parcialmente definidas, relaciones incompletas Claves incorrectas o ausentes, sin relaciones
Datos Ingresados Todos los datos requeridos ingresados correctamente y de forma coherente Mayoría de datos ingresados correctamente con errores menores Datos básicos ingresados con algunos errores o faltantes Datos parcialmente ingresados con varios errores Datos insuficientes o incorrectos
Funcionalidad Base de datos completamente funcional, consultas exitosas Base de datos mayormente funcional con errores menores Base de datos funcional con limitaciones básicas Base de datos con funcionalidad limitada Base de datos no funcional
Presentación Archivo bien organizado, nombres de tablas y campos descriptivos Archivo organizado con nombres apropiados Archivo básicamente organizado Archivo poco organizado Archivo desorganizado

Recursos de Apoyo

Videos Recomendados:

  • “Introducción a las Bases de Datos” - Canal Educativo TI
  • “Microsoft Access para Principiantes” - Tutorial Completo
  • “Diseño de Tablas y Relaciones en Access”

Lecturas Complementarias:

  • PDF: “Fundamentos de Bases de Datos Relacionales”
  • PDF: “Guía Práctica de Microsoft Access”
  • Artículo: “Tipos de Datos en Bases de Datos”

Herramientas Adicionales:

  • Microsoft Access (versión estudiantil)
  • Diagramas ER online para práctica

Fecha de entrega: [Definir fecha]
Medio de entrega: Correo electrónico del profesor
Formato: Archivo .accdb

Comments

Popular posts from this blog

Periodo II - Actividad II - (Powtoon) - Parte II

Modelo entidad-relación y diagrama entidad-relación (Periodo III - Actividad II)

Periodo II - Actividad I - (Powtoon) - Parte I