Bases de Datos

Ciencias de la Computación

ISI-303 • Nivel 3

Créditos

4

Horas Estimadas

41h

Temas

13

Correlativas

Temario

1

Archivos vs bases de datos

Limitaciones de archivos, ventajas de BD

2h 40min

2

DBMS

Componentes, arquitectura, tipos

2h 0min

3

Arquitectura de BD

Niveles, independencia de datos

2h 20min

4

Modelos de datos ER y relacional

Entidad, relación, cardinalidad, transformación

4h 40min

5

Modelo relacional

Esquema, dominios, claves, integridad

3h 20min

6

Algebra relacional

Selección, proyección, join, unión, diferencia

3h 0min

7

Normalización (1FN-BCNF)

Dependencias funcionales, 1FN a BCNF

5h 40min

8

SQL: DDL y DML

CREATE, ALTER, INSERT, SELECT, JOINs

5h 0min

9

Subconsultas y vistas

Subqueries, vistas, funciones, procedimientos

3h 20min

10

Integridad y transacciones

ACID, concurrencia, bloqueo, aislamiento

4h 40min

11

Procedimientos almacenados

Funciones, triggers, cursores

3h 0min

12

Seguridad

Roles, permisos, encriptación

2h 20min

13

Indexación

B-tree, hash, optimización de consultas

3h 0min

Metodología

Teoría

Clase teórica sobre modelos de datos, algebra relacional, normalización y transacciones.

Práctica

Laboratorio con PostgreSQL: creación de BD, consultas SQL, procedimientos almacenados.

Actividades

  • Diseño de esquemas de BD (ER y relacional)
  • Implementación de consultas SQL avanzadas
  • Normalización hasta 3FN y BCNF
  • Trabajos Prácticos de SQL
  • Optimización de consultas

Evaluación

Regularidad

Aprobar como mínimo 2 parciales con nota >= 4. Asistencia regular obligatoria (80% mínimo).

Promoción

Examen final escrito y práctico de SQL.

Recuperatorio

Recuperatorio en el primer semestre del año siguiente.

Objetivos de Aprendizaje

  • Diseñar bases de datos relacionales usando el modelo ER.
  • Escribir consultas SQL complejas (JOINs, subconsultas, vistas).
  • Normalizar bases de datos hasta la forma normal de Boyce-Codd.
  • Gestionar transacciones y concurrencia.

Competencias

  • Diseñar esquemas de BD con el modelo entidad-relación.
  • Escribir consultas SQL avanzadas.
  • Aplicar técnicas de normalización.
  • Gestionar transacciones con ACID.

Ejercicios Tipo Parcial

SQL avanzado

3/5

Escribir una consulta que obtenga los 5 estudiantes con mayor promedio por materia.

Solución: SELECT s.name, m.name, AVG(n.grade) FROM students s JOIN grades n ON s.id=n.student_id JOIN subjects m ON n.subject_id=m.id GROUP BY s.id, m.id ORDER BY AVG(n.grade) DESC FETCH FIRST 5 ROWS ONLY.

Normalización

4/5

Normalizar a 3FN la tabla: Alumno(nombre, carrera, profesor, materia, aula).

Solución: Crear tablas: Alumno(id, nombre, carrera_id), Carrera(id, nombre), Profesor(id, nombre), Materia(id, nombre, profesor_id), Aula(id, numero), Clase(alumno_id, materia_id, aula_id).

Preguntar al Tutor

Resolvé dudas sobre esta materia

Practicar

Ejercicios adaptativos por tema

Crear Flashcards

Repetición espaciada para memorizar

Cargando materiales...