0% encontró este documento útil (0 votos)
11 vistas30 páginas

Proyecto 3 completo

El proyecto integrador tiene como objetivo diseñar una base de datos para un sistema de control escolar, utilizando MySQL y aplicando conceptos de modelado de datos. Se propone un modelo entidad-relación que incluye mejoras en la organización de datos y normalización, así como la creación de consultas y procedimientos almacenados. A través de este proceso, se busca fortalecer las habilidades en gestión de bases de datos y garantizar la integridad de la información en instituciones educativas.

Cargado por

a850239905
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
11 vistas30 páginas

Proyecto 3 completo

El proyecto integrador tiene como objetivo diseñar una base de datos para un sistema de control escolar, utilizando MySQL y aplicando conceptos de modelado de datos. Se propone un modelo entidad-relación que incluye mejoras en la organización de datos y normalización, así como la creación de consultas y procedimientos almacenados. A través de este proceso, se busca fortalecer las habilidades en gestión de bases de datos y garantizar la integridad de la información en instituciones educativas.

Cargado por

a850239905
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 30

ASIGNATURA: BASES DE DATOS RELACIONALES

PROFESORA: JUDITH JIMENEZ GARCIA


Actividad #3. Proyecto integrador etapa 1

Integrantes del equipo:


EVELYN PAOLA MORALES VILLARREAL,
ALFONSO PRECIADO JAIME
YAEL ROCHA MARTINEZ
EFREN DAVID SANCHEZ PEREZ EDGAR
JAVIER SOLORIO VEGA

FECHA

31 DE MARZO DE 2025

INTRODUCCIÓN:
En la actualidad, la gestión eficiente de la información en instituciones educativas es
fundamental para garantizar un adecuado control de alumnos, profesores y
asignaturas. Para ello, el uso de bases de datos relacionales permite organizar,
almacenar y manipular grandes volúmenes de datos de manera estructurada y
segura.

Este proyecto tiene como objetivo diseñar la estructura de una base de datos para
un sistema de control escolar, aplicando los conocimientos adquiridos sobre
modelado de datos y administración de bases de datos. Como parte del proceso, se
realizará la instalación del sistema gestor de bases de datos (DBMS) MySQL, la
creación de una base de datos de prueba y el desarrollo de un diagrama Entidad-
Relación (E-R) que refleje la estructura del sistema propuesto.

Mediante este trabajo, se fortalecerán las habilidades en diseño y gestión de bases


de datos, así como en el uso de herramientas especializadas como MySQL
Workbench y Lucidchart. Además, se asegurará que el modelo desarrollado cumpla
con los requisitos de la institución educativa, permitiendo una futura implementación
eficiente del sistema.

¿Qué hacer? Planteamiento: Cierta institución educativa ha solicitado el desarrollo


de un prototipo de sistema de control escolar para la gestión de alumnos, profesores
y asignaturas. Tu objetivo es desarrollar la estructura de base de datos necesaria
para cubrir la solicitud.

Inicialmente se plantea el siguiente Modelo entidad - relación.


1. A partir de la revisión de los materiales sugeridos y actividades realizadas
hasta el momento, sigue la siguiente estructura y desarrolla en equipo de dos
personas los apartados que se indican para esta etapa de tu Proyecto integrador:
Etapa 1 del
Proyecto integrador Introducción I. DBMS Sistema manejador de base de datos 1.1
Instalación
1.2 Creación de base de datos de prueba
 Una vez instalado, crea una base de datos de prueba como lo indica el video
tutorial nómbrala con tu nombre_apellido.

II. Modelo Entidad - Relación


2.1 Identificación de entidades y atributos

Revisión del Diagrama Entidad-Relación

¿Cumple con los requisitos para una institución educativa?

Sí, el diagrama está bien estructurado y cubre los aspectos esenciales de una
institución educativa. Sin embargo, hay algunos aspectos que podrían mejorarse:

1. Falta de una entidad específica para alumnos:


a. Actualmente, la entidad persona engloba a profesores y alumnos,
diferenciándolos con el atributo tipo.
b. Propuesta: Crear una entidad alumno, relacionada con persona, para
organizar mejor los datos específicos de los estudiantes.
2. Eliminación de redundancias:
a. En persona, hay atributos como teléfono, dirección, ciudad, que
pueden estar en una entidad aparte (contacto).
b. Propuesta: Crear una entidad contacto para normalizar mejor los
datos.
3. Relación de cursos con grados:
a. curso_escolar solo almacena los años, pero no especifica su relación
con los grados.
b. Propuesta: Agregar una relación entre curso_escolar y grado para
indicar qué grados se imparten en cada curso.

2.2 Generación de diagrama Entidad-Relación


Explicación de cambios propuestos

• Separar alumnos de persona mejora la organización y facilita consultas


específicas.
• Crear la entidad contacto permite una mejor normalización, evitando información
repetida.
• Relacionar curso_escolar con grado hace que el modelo sea más representativo
de un sistema escolar real.

Referencias.
• López, M., Gallegos, F. (2017). Programación de bases de datos relacionales
[Archivo PDF].
https://www.detodoprogramacion.org/2022/02/programacion-de-bases-dedatos-
relacionales.html
• Pulido, E., Escobar, O., Núñez, J. (2019). Base de Datos [Archivo PDF].
https://es.scribd.com/document/728742385/BaseDatos-Pulido-Escobar-
Nunez-eBook
Capítulo 3. Modelo relacional. Diseño del modelo físico de datos.
Páginas 63 a 89
• Merchán, O. (2016). Diseño de bases de datos [Archivo PDF].
https://www.detodoprogramacion.org/2022/04/diseno-de-bases-de-datososwaldo-
merchan.html
Capítulo 3. Modelo relacional. Páginas 103-122
Capítulo 6. Normalización. Páginas 283-315
• Diferencia entre llave primaria (Primary Key) y llave foránea (Foreign Key).
(2023, December 26). Blog En Español.
https://bloginspanish.wordpress.com/2015/06/21/diferencia-entre-llaveprimaria-primary-key-
y-llave-foranea-foreign-key/

Base de datos relacionales


Actividad 5. Proyecto integrador etapa 2

Profesor
a: Judith Jiménez García

Integrantes:

 Evelyn Paola Morales Villarreal


 Alfonso Preciado Jaime
 Yael Rocha Martínez
 Efrén David Sánchez Pérez
 Edgar Javier Solorio Vega

II. Creación y llenado de la base de datos.


2.1Creación de la estructura de la base de datos.

 Genera elcipt.sql
sr con las instrucciones necesarias para crear la estructura de base
de datos con las tablas, campos y tipos de datos que definiste. En el apartado 1.5 de
la siguiente referencia encontrarás información de utilidad para tu ejercicio. En el
1.5.2encontrarás un ejemplo de creación dede base
datos, realiza los ajustes
necesarios.
Sánchez, J. (2020). Ejercicios. Realización de consultas SQL
Recuperado
[Sitio Web]
de
https://josejuansanchez.org/bd/ejercicio
s-consultassql/index.html#dato
s-1
 Ejecuta tu script y valida que tus tablas se hayan creado conforme a tu diagrama, si
hiciste cambios, justifícalos. Utiliza las funciones
DESCRIBEy SHOW TABLES
.

Para realizar el script en MYSQL utilizaremos como


ncia en
refere
la tabla ER que trabajamos
anteriormente en nuestra etapa 1 del proyecto integrador.

A continuación, podemos observar que el código


a creación
para de
l la base de datos (tablas
del diagrama ER) funciona correctamente.
Script.MYSQL – Diagrama ER d e la Universidad

Utilizando la función “SHOW TABLES; ”


A continuación, daremos una explicación sencilla sobre los Comandos utilizados en el Script
SQL:
Tipos deDatos

Comando ¿Qué hace?

INT Define un campo numérico entero. Ideal para IDs.

Entero pequeño-128
( a 127 o 0 a 255 sin signo). Se usa para números
TINYINT
bajos.

FLOAT Número decimal. Útil para promedios o créditos.

VARCHAR(n) Cadena de texto dehasta n caracteres.

DATE Almacena fechas (año


-mes-día).

YEAR Guarda solo el año (ej. 2025).

ENUM('op1',...) Lista de valores predefinidos. Ejemplo: 'M', 'F'.


Restricciones y Claves
Comando ¿Qué hace?

NOT NULL Obliga a que el campo siempre tenga un valor (no puede
quedar vacío).

UNIQUE
Asegura que el valor no se repita en ninguna fila de la tabla.
PRIMARY KEY

Identifica de forma única cada fila. Solo puede haber una por
tabla.
AUTO_INCREMENT

Hace que el valor del campo se incremente automáticamente


FOREIGN KEY
(solo para enteros).
REFERENCES
tabla(campo)
Crea una relación con otra tabla.
ON DELETE CASCADE

Indica a qué campo de qué tabla apunta una clave foránea.


ON DELETE SET NULL

Si se elimina el registro relacionado, también se elimina este.

Si se elimina el registro relacionado, este campo se vuelve


NULL.
Utilizando la función “DESCRIBE;”
2.2 Llenado de la base de datos
• Una vez creada tu base de datos ingresa registros en ella. Para ello utiliza la función
INSERT. En la referencia del punto anterior en el apartado 1.5.3 encontrarás datos de
prueba para el diagrama propuesto, si te son de utilidad puedes usarlos.
• Genera un script sql con las instrucciones de inserción a tus tablas, ejecútalo y valida
en Workbench que tus inserciones sean exitosas. Toma capturas de pantalla de tu
proceso. Puedes ejecutar tu script por fragmentos.

Insertar datos en tabla Departamento:

Insertar datos en tabla Persona:

Insertar datos en tabla Contacto:

Insertar datos en tabla alumnos:


Ejecución del script: las inserciones se realizaron con éxito.

Mostrando datos en tabla: asignatura;


 López, M., Gallegos, F. (2017). Programación de bases de datos relacionales [Archivo PDF].
https://www.detodoprogramacion.org/2022/02/programacion-de-bases-de-datos-relacionales.html

 Sánchez, J. (2020). Ejercicios. Realización de consultas SQL Ejercicios. Realización de


consultas SQL [Sitio Web]. https://josejuansanchez.org/bd/ejercicios-consultas-sql/index.html#datos-1
Base de Datos Relacionales

Actividad 8. Proyecto integrador Etapa 3


Profesora: Judith Jiménez García

Alumnos:
 Evelyn Paola Morales Villarreal
 Alfonso Preciado Jaime
 Yael Rocha Martínez
 Efrén David Sánchez Pérez
 Edgar Javier Solorio Vega
2. En la etapa 2 del proyecto se solicitó la creación y llenado de base de datos
mediante código SQL y utilizando tu ambiente de trabajo Workbench, en esta última
etapa deberás realizar lo siguiente:

III. Generación de consultas, procedimientos almacenados y vistas

3.1 Generación de consultas


 Retoma la base de datos creada en la etapa previa del proyecto y realiza las siguientes consultas utiliza tu
ambiente de trabajo Workbench:

a) Listado con nombre y apellidos de todos los alumnos.


b) Listado de los profesores junto con el nombre del departamento al que están vinculados. El listado debe devolver
cuatro columnas, nombre, primer apellido, segundo apellido y nombre del departamento.

c) Listado con los profesores que no imparten ninguna asignatura. El listado debe devolver Nombre,
apellido y sexo.
d) Devuelve el número total de alumnos.
e) Listado de todas las asignaturas de un alumno en particular.

f) Listado de asignaturas con el nombre y apellido del profesor que las imparte.
g) Listado de alumnos, nombre y apellido de una asignatura en particular.

3.2 Generación de procedimientos almacenados

• Retoma las consultas e) y g) y realízalas mediante un procedimiento almacenado,


ingresando el alumno y asignatura como parámetros de entrada respectivamente.
• Toma evidencia de la creación del procedimiento, así como, de su invocación y
resultados obtenidos.

3.3 Generación de vistas


Retoma la consulta a) y crea una vista que arroje el mismo resultado.


Conclusión
El desarrollo de este proyecto integrador permitió afianzar de manera práctica los conceptos esenciales
de bases de datos relacionales. A lo largo de las tres etapas, aprendimos la importancia de
estructurar correctamente la información mediante la identificación de entidades, relaciones y la
aplicación de reglas de normalización para garantizar la integridad de los datos. Además, la
implementación de consultas SQL más complejas, como aquellas que combinan múltiples tablas o
filtran información específica, reforzó la comprensión de cómo diseñar sistemas de información
funcionales y escalables. En conjunto, este proyecto demostró que un diseño de base de datos bien
planeado no solo facilita el manejo de grandes volúmenes de datos, sino que también permite
responder de manera precisa y eficiente a necesidades de consulta en contextos reales.

REFERENCIAS:

 López, M., Gallegos, F. (2017). Programación de bases de datos relacionales [Archivo PDF].
https://www.detodoprogramacion.org/2022/02/programacion-de-bases-de-datos-relacionales.html

 Sánchez, J. (2020). Ejercicios. Realización de consultas SQL Ejercicios. Realización de


consultas SQL [Sitio Web]. https://josejuansanchez.org/bd/ejercicios-consultas-sql/index.html#datos-1
• López, M., Gallegos, F. (2017). Programación de bases de datos relacionales
[Archivo PDF].
https://www.detodoprogramacion.org/2022/02/programacion-de-bases-dedatos-
relacionales.html
• Pulido, E., Escobar, O., Núñez, J. (2019). Base de Datos [Archivo PDF].
https://es.scribd.com/document/728742385/BaseDatos-Pulido-Escobar-
Nunez-eBook
Capítulo 3. Modelo relacional. Diseño del modelo físico de datos.
Páginas 63 a 89
• Merchán, O. (2016). Diseño de bases de datos [Archivo PDF].
https://www.detodoprogramacion.org/2022/04/diseno-de-bases-de-datososwaldo-
merchan.html
Capítulo 3. Modelo relacional. Páginas 103-122
Capítulo 6. Normalización. Páginas 283-315
• Diferencia entre llave primaria (Primary Key) y llave foránea (Foreign Key).
(2023, December 26). Blog En Español.
https://bloginspanish.wordpress.com/2015/06/21/diferencia-entre-llaveprimaria-primary-key-
y-llave-foranea-foreign-key/

También podría gustarte