Está en la página 1de 32

Tabla de contenido

RESUMEN .......................................................................................................................................... 5
INTRODUCCIÓN .............................................................................................................................. 6
Planteamiento del problema ............................................................................................................ 6
JUSTIFICACIÓN ............................................................................................................................... 8
OBJETIVOS ....................................................................................................................................... 9
Objetivo General ............................................................................................................................. 9
Objetivos Específicos ...................................................................................................................... 9
MARCO TEORICO .......................................................................................................................... 10
BASES DE DATOS ...................................................................................................................... 10
Tipos de bases de datos ................................................................................................................. 10
Entidad .......................................................................................................................................... 11
Atributos ........................................................................................................................................ 12
Relación......................................................................................................................................... 13
Relaciones de cardinalidad ............................................................................................................ 14
Claves ............................................................................................................................................ 15
METODOLOGÍA ............................................................................................................................. 16
DICCIONARIO DE SUSTANTIVOS Y VERBOS ......................................................................... 18
Sustantivos (Entidades candidatas) ............................................................................................... 18
Verbos (Relaciones candidatas) .................................................................................................... 19
DICCIONARIO DE ENTIDADES Y RELACIONES ..................................................................... 19
Relaciones ..................................................................................................................................... 19
Entidades (Corregidas - Normalización) ....................................................................................... 21
MODELO CONCEPTUAL .............................................................................................................. 26
MODELO LÓGICO.......................................................................................................................... 27
MODELO LÓGICO CORREGIDO (Tercera Entrega) .................................................................... 28
MODELO FÍSICO (Ver modelo corregido en Anexo 4) .................................................................. 28
PROCESO DE NORMALIZACIÓN ......................................................................................................... 39
CARDINALIDAD ............................................................................................................................ 43
Script para poblado de entidades (Ver Anexo 5): ............................................................................. 50
Acciones mínimas para implementar: ............................................................................................... 50
Script consultas (Ver Anexo 6): ........................................................................................................ 52
CONCLUSIONES ............................................................................................................................ 55
REFERENCIAS BIBLIOGRÁFICAS .............................................................................................. 56

Lista de ilustraciones

Ilustración 1. Ejemplo de entidad (Fuente: Elaboración Propia) ...................................................... 11


Ilustración 2. Ejemplo entidad débil. (Fuente: Elaboración Propia) ................................................. 11
Ilustración 3. Ejemplo de atributo y entidad. Recuperado de García, M., & Arévalo, J. (15 de
octubre de 2013). https://postgis.readthedocs.io/es/latest/bases-de-datos/teoria_bases_datos.html . 12
Ilustración 4. Entidad y Atributos. Obtenido de: Gutiérrez, P. (5 de noviembre de 2013). Genbeta.
https://www.genbeta.com/desarrollo/fundamento-de-las-bases-de-datos-modelo-entidad-relacion 13
Ilustración 5. Atributos y datos - Tabla Obtenido de. Gutiérrez, P. (5 de noviembre de 2013).
Genbeta. https://www.genbeta.com/desarrollo/fundamento-de-las-bases-de-datos-modelo-entidad-
relacion .............................................................................................................................................. 13
Ilustración 6. Relación entre entidades. Obtenido de. Gutiérrez, P. (5 de noviembre de 2013).
Genbeta. https://www.genbeta.com/desarrollo/fundamento-de-las-bases-de-datos-modelo-entidad-
relacion .............................................................................................................................................. 13
Ilustración 7. Cardinalidad uno a uno (1:1). Obtenido de Obtenido de. Gutiérrez, P. (5 de noviembre
de 2013). Genbeta. https://www.genbeta.com/desarrollo/fundamento-de-las-bases-de-datos-modelo-
entidad-relacion ................................................................................................................................. 14
Ilustración 8. Cardinalidad uno a varios (1:n / n:1). Obtenido de Obtenido de. Gutiérrez, P. (5 de
noviembre de 2013). Genbeta. https://www.genbeta.com/desarrollo/fundamento-de-las-bases-de-
datos-modelo-entidad-relacion .......................................................................................................... 14
Ilustración 9. Varios a varios (m:n). Obtenido de Obtenido de. Gutiérrez, P. (5 de noviembre de
2013). Genbeta. https://www.genbeta.com/desarrollo/fundamento-de-las-bases-de-datos-modelo-
entidad-relacion ................................................................................................................................. 14
Ilustración 10.Modelo Entidad Relación Extendido – Modelo conceptual del proyecto Mundial de
Futbol (Fuente: Elaboración Propia) ................................................................................................. 26
Ilustración 11. Modelo Lógico – Modelo conceptual del proyecto Mundial de Futbol (Fuente:
Elaboración Propia) ........................................................................................................................... 27
Ilustración 12. Normalizacion1. Calificación-Equipos (Elaboración propia) ..................................... 39
Ilustración 13. Normalizacion2. Anfitrión-Equipos (Elaboración propia) ......................................... 40
Ilustración 14. Normalizacion3. Partidos-Equipos (Elaboración propia) .......................................... 40
Ilustración 15.Normalizacion4. Personas-Partido (Elaboración propia) ........................................... 40
Ilustración 16. Normalización5. Personas-Tarjetas (Elaboración propia) ......................................... 41
Ilustración 17. Normalización 6. Personas-Posición (Elaboración propia) ........................................ 41
Ilustración 18. Normalización7. Personas-Titularidades (Elaboración propia) ................................. 41
Lista de Tablas

Tabla 1. Sustantivos (Entidades candidatas) ..................................................................................... 19


Tabla 2. Verbos (Relaciones candidatas) .......................................................................................... 19
Tabla 3. Relaciones ........................................................................................................................... 20
Tabla 4. Entidades ............................................................................................................................. 25
METODOLOGÍA

Para elaborar el proyecto, el estudiante debe ir aplicando los procesos metodológicos del
programa, hacer ejercicios de clase y una vez afianzado el conocimiento debe comenzar a
construir las respectivas tres entregas en las fechas pactadas en el curso.

Primera entrega: Elaboración del Modelo Conceptual. En el modelo Conceptual, el


estudiante debe elaborar el levantamiento de los sustantivos y los verbos para detectar las
entidades, sus atributos y la cardinalidad entre las entidades. Una vez filtrados los sustantivos
que son entidades, se debe elaborar el modelo de conceptual, aplicar la cardinalidad y
finalmente completar el documento de esta entrega con el diccionario de entidades, relaciones
y el modelo entidad-relación, es decir, el modelo conceptual.

Segunda Entrega: Elaboración del Modelo Lógico. Con base en el modelo conceptual,
proceder a identificar los atributos, las llaves primarias, las llaves únicas si existen, las llaves
foráneas e identificar las entidades débiles del modelo, agregar los atributos faltantes y tablas
adicionales que requiera el modelo que no fueron identificadas. Normalizar el modelo y
pasarlo a modelo físico. Finalmente elaborar el documento de esta entrega. Implementar un
motor de base de datos libre en su portátil como HSBQL DB o crear una carpeta de Oracle
en línea.

Tercera entrega: Elaboración de los desarrollos de los puntos 6y7, junto con el documento
final con los dos modelos entregados anteriormente reflejando las correcciones sugeridas
sobre las entregas 1 y 2, por el tutor de la materia.
Incluir el código sql, los datos de prueba y los resultados obtenidos.

Acciones mínimas para implementar


1. Crear, consultar, eliminar y modificarlos datos de jugador, un técnico, etc.
2. Crear, consultar, eliminar y modificar los datos de un equipo, un estadio, etc.
3. Crear, consultar, eliminar y modificar datos de ciudad o un país donde se desarrolle
el torneo.
4. Crear, consultar, eliminar y modificar los datos de un partido jugado o por jugar.
5. crear, consultar, eliminar y modificar los datos del alquiler de un estadio
(ESNECESARIO LA FECHA INICIAL del proceso de rentado, fecha proceso)

LAS RESTRICCIONES EN ELIMINACIÓN Y MODIFICACION LAS DEDUCEN


USTEDES PARA MANTENER LA INTEGRIDAD DE LA BD.

Consultas mínimas para implementar


1. Listar los datos de los estadios, para un rango de ciudades y ordenado por ciudad.
2. Listar la cantidad partidos por grupo por ciudad.
3. Listar la cantidad promedio de días que un jugador fue suspendido o está incapacitado
en un rango de fechas dado.
4. Listar el precio total del alquiler acumulado de todos los estadios contratados por
fecha en un rango de fechas dado, acumulado por ciudad y total
5. Listarlos datos técnicos del campeonato.
6. Listar las tarjetas acumuladas amarillas o rojas de un jugador.
7. Listar el valor recaudado en cada partido por estadio por fecha.
8. Las pruebas y cargue de datos los deben realizar ustedes buscando que los datos de
prueba sean suficientes para validar TODOS los casos posibles.
DICCIONARIO DE SUSTANTIVOS Y VERBOS

Sustantivos (Entidades candidatas)

Sustantivo Descripción

Equipo Representa un país que clasificó para participar en el mundial.

Estadio Representa una cancha física de juego inscrita en el torneo para


realizar un encuentro o partido.
Partido Representa un encuentro del torneo o mundial de futbol, entre dos
equipos.
Persona Representa las cantidades de sujetos que participa en representación
de un equipo en el mundial
Cambio Representa los reemplazos de jugadores en un encuentro o partido.

Cancha Representa la información de localización del equipo en un estadio.

Puntuación Representa la posición relativa de cada equipo indicando los


equipos ganadores y perdedores de acuerdo con los puntos
acumulados a la fecha en el mundial
Fecha Atributo que contiene las fechas establecidas para los encuentros

Grupo Agrupa el conjunto de equipos que se enfrentarán a lo largo del


mundial, de acuerdo con su clasificación eliminatoria.
Desempate Atributo de un partido que representa encuentros adicionales a los
inicialmente planificados y que surgen por una puntuación igualitaria
entre dos equipos.
Continente Representa los diferentes continentes geográficos a ser asociados con
los países participantes en el mundial
Estadística Muestra información de cada equipo sobre sus partidos jugados,
ganados, perdidos, empatados, goles (anotados y
recibidos), sanciones, lesiones (generadas, recibidas), estado
(clasificado o desclasificado), puntuación.
Sanción Representa el estado de un jugador, cuerpo técnico, auxiliar de
equipo o equipo en sanciones disciplinarias como consecuencia de las
fallas al reglamento.
Tarjeta Representa una amonestación mediante tarjetas amarillas o rojas
realizada a un jugador
Lesión Representa el estado de un jugador de acuerdo con una enfermedad o
golpe recibido a lo largo del torneo.
Baja Representa los jugadores dados de baja por enfermedad o lesión.
Gol Representa los goles anotados y goles recibidos por jugador de cada
equipo en un partido o encuentro
Posición Informa sobre la posición o posiciones de formación de un jugador en
un partido determinado. Puede ser: portero, defensa, centrocampista,
delantero.
Titularidad Muestra la función relativa de un jugador en un partido. Esta puede
ser: titular o suplente.
Clasificación Muestra el estado de clasificación de un equipo en el mundial. Esta
puede ser Octavos de final, Cuartos de final, Semifinal, Final.
Tabla 1. Sustantivos (Entidades candidatas)

Verbos (Relaciones candidatas)

Verbo Descripción
Tener Poseer una cosa o disfrutar de ella.
Jugar Oportunidad de hacer provecho o disfrute de un partido
Cambiar Capacidad de transformar o variar una condición o característica.
Anotar Generar registro de goles a favor
Disputar Oportunidad de pertenecer a un equipo.
Participar Oportunidad de participar en un encuentro.
Clasificar Avanzar en categoría a lo largo del torneo.
Puntear Generar puntos a partir de los goles y partidos ganados.
Eliminar Ser desclasificado del torneo.
Ofrece Cualidad de dar o permitir el uso de una cosa
Obtiene Capacidad de recibir algo
Generar Surgimiento de una acción o cosa.
Pertenecer Acción de ser parte de una cosa o un lugar
Tabla 2. Verbos (Relaciones candidatas)

DICCIONARIO DE ENTIDADES Y RELACIONES

Relaciones

Entidad A Relación Entidad B Cardinalidad


Continente Tiene Equipos 1:M
Equipo Tiene Jugadores 1:M
Equipo Ofrece Estadios 1:M
Persona Participan Partidos M (36 máximo):M
Partido Tiene Cambios 1:M (6 máximo)
persona Tiene Lesiones 1:M
Persona Tiene Sanciones 1:M
Partidos Tienen Equipos M:M (2 máximo)
Partido Tiene Tarjetas 1:M
Equipos Pertenecen Grupos M:M
Persona Tienen Tarjetas 1:M
Equipo Tiene Estadística 1:1
Persona Tiene Sanciones 1:M
Persona Obtienen Baja M:1
Persona Anotan Goles 1:M
Partidos Tienen Posiciones M:M
Persona Tienen Posiciones M:M
Persona Tienen Titularidad M:M
Partidos Tienen Goles 1:M
Equipos Obtienen Goles 1:M
Equipos Obtienen Clasificación M:M
Tabla 3. Relaciones
Entidades (Corregidas - Normalización)

Nombre de la CLASIFICACIONES
Entidad:
Descripción: Muestra el estado de clasificación de un equipo en el mundial. Esta puede
ser Octavos de final, Cuartos de final, Semifinal, Final.
Atributo Descripción del Atributo
Equipo_PK Nombre del equipo
Desarrollo PK Fase de clasificación (Octavos, Cuartos, Semifinal, Final)

Nombre de la Entidad: GRUPOS


Descripción: Contiene el conjunto de equipos que se enfrentarán a lo largo
del mundial, de acuerdo con su clasificación eliminatoria.
Atributo Descripción del Atributo
Grupo_PK Nombre del grupo
Descripción Una breve descripción sobre el grupo.

Nombre de la Entidad: EQUIPOS


Descripción: Muestra el estado de clasificación de un equipo en el mundial.
Esta puede ser Octavos de final, Cuartos de final, Semifinal,
Final.
Atributo Descripción del Atributo
País_PK Nombre del equipo, representa una selección.
Bandera Ruta donde se almacena la bandera del país
Escudo Ruta donde se almacena el escudo del país

Nombre de la Entidad: ESTADÍSTICAS


Descripción: Muestra información de cada equipo sobre sus partidos
jugados, ganados, perdidos, empatados, goles (anotados y
recibidos), sanciones, lesiones (generadas, recibidas), estado
(clasificado o desclasificado), puntuación.
Atributo Descripción del Atributo
Pais_estadistica_PK Nombre del equipo
Parti_jugados Cantidad de partidos jugados a la fecha
Parti_ganados Cantidad de partidos ganados a la fecha
Parti_perdidos Cantidad de partidos perdidos a la fecha
Parti_empatados Cantidad de partidos empatados a la fecha
Goles_favor Goles a favor del equipo
Goles_contra Goles en contra del equipo
Diferencia_goles Diferencia de goles entre a favor y en contra
Tarjetas_rojas Cantidad de tarjetas rojas
Tarjetas_amarillas Cantidad de tarjetas amarillas
Sanciones Cantidad de sanciones del equipo
Puntos Cálculo de puntos de acuerdo a los partidos ganados y
empatados
Estado Estado de juego del equipo (Clasificado, Suspendido, No
Clasificado).
Posición Lugar en el ranking del campeonado o Mundial.

Nombre de la Entidad: ANFITRION


Descripción: Representa el equipo propietario en el cual se lleva el mundial.
Atributo Descripción del Atributo
Nombre anfitrion_PK Nombre del anfitrión
Estadios anfitrión Estadios del país anfitrión
Año mundial Fecha del año en que se realiza el mundial

Nombre de la Entidad: ALQUILER


Descripción: Constituye el alquiler de cada uno de los estadios establecidos
por el mundial
Atributo Descripción del Atributo
Id alquiler_PK Nombre del alquiler
Nombre estadios alquiler Son los nombres de los estadios establecidos para el alquiler
Tarifa Valor de recaudo por el alquiler prestado
Fecha inicio Tiempo inicial del contrato alquiler del estadio
Fecha fin Tiempo final del contrato alquiler del estadio

Nombre de la Entidad: ESTADIOS


Descripción: Representa una cancha física de juego inscrita en el torneo
para realizar un encuentro o partido.
Atributo Descripción del Atributo
Nombre_ estadio PK Nombre del estadio
Ciudad Ciudad a la que pertenece el estadio
Capacidad Número máximo de personas que pueden acceder
Altitud Metros sobre el nivel del mar
Temperatura_prom Grados centígrados promedio de temperatura ambiental
Nombre de la Entidad: CONTINENTES
Descripción: Representa los diferentes continentes geográficos a ser
asociados con los países participantes en el mundial
Atributo Descripción del Atributo
Nombre_continente PK Nombre del continente
Numero_paises Cantidad de países del continente
Países_clasificados Cantidad de países de ese continente que clasificaron

Nombre de la Entidad: GOLES


Descripción: Representa los goles anotados y goles recibidos por jugador
de cada equipo en un partido o encuentro.
Atributo Descripción del Atributo
Id_gol PK Número único que identifica un gol
Jugador_anotador Jugador que realiza el gol
Partido Identidad del partido
Minuto_partido Minuto en el que realiza el gol
Equipo_anotador Equipo ganador
Equipo_perdedor Equipo que recibe el gol

Nombre de la Entidad: CAMBIOS


Descripción: Representa los reemplazos de jugadores en un encuentro o
partido.
Atributo Descripción del Atributo
Id_cambio_PK Identificador único de cambio de jugador
Jugador_saliente Jugador que es retirado
Jugador_entante Jugador que entra al campo de juego
Minuto_partido Minuto del cambio
Conteo_cambio Número acumulado de cambios

Nombre de la Entidad: TITULARIDADES


Descripción: Muestra la función relativa de un jugador en un partido. Esta
puede ser: titular o suplente.
Atributo Descripción del Atributo
Persona_titular PK Identidad del jugador
Titularidad Muestra si es titular o suplente
Id_partido_titularidad PK Identidad del partido
Minuto_partido Minuto en el que se un jugador cambia de titularidad

Nombre de la Entidad: LESIONES


Descripción: Representa el estado de un jugador de acuerdo con una
enfermedad o golpe recibido a lo largo del torneo.
Atributo Descripción del Atributo
Persona_lesionado_PK Identidad del jugador lesionado
Tipo_Lesion Tipo de lesión
Rendimiento Estado en rendimiento del jugador

Nombre de la Entidad: PERSONA


Descripción: Representa la persona que participa en representación de un
equipo en el mundial
Atributo Descripción del Atributo
Pasaporte_PK Documento de identidad del jugador (Numero único)
Nombres_persona Nombres del jugador
Apellidos_persona Apellidos del jugador
Edad Edad del jugador
Camiseta Número de la camiseta
Nacionalidad Origen del jugador (Lugar de Nacimiento)

Nombre de la Entidad: PARTIDOS


Descripción: Representa un encuentro del torneo o mundial de futbol, entre
dos equipos.
Atributo Descripción del Atributo
Id_partido_PK Número único de identidad de un partido
Fecha_partido Fecha en la cual se juega el encuentro
Equipo_local Equipo que juega de local
Equipo_Visitante Euquipo que juega de visitante

Nombre de la Entidad: SANCIONES


Descripción: Representa el estado de un jugador, cuerpo técnico, auxiliar de
equipo o equipo en sanciones disciplinarias como
consecuencia de las fallas al reglamento.
Atributo Descripción del Atributo
Persona_sancionada PK Identidad del jugador
Tipo de sanción Tipo de sanción otorgada
Estado_sanción Posibilidad de seguir jugando en el campeonato
Fecha_sancion Fecha en la que se otorgó la sanción

Nombre de la Entidad: TARJETAS


Descripción: Representa una amonestación mediante tarjetas amarillas o
rojas realizada a un jugador
Atributo Descripción del Atributo
Persona_amonestada_PK Identidad del jugador amonestado
Id _partido_tarjeta PK Identidad del partido
Minuto_partido_tarjeta Minuto en el que se colocó la tarjeta
Color_tarjeta Color de la tarjeta

Nombre de la Entidad: BAJAS


Descripción: Representa los jugadores dados de baja por enfermedad o
lesión.
Atributo Descripción del Atributo
Persona_en_baja PK Identidad del jugador en baja
Estado_baja Posibilidad de seguir en el campeonato (Si o No)
Motivo_baja Razón por la cual el jugador tiene o no estado de baja
Fecha_baja Fecha en la que se genera un cambio en el estado de baja

Nombre de la Entidad: POSICIONES


Descripción: Informa sobre la posición o posiciones de formación
de un jugador en un partido determinado. Puede ser: portero,
defensa, centrocampista, delantero.
Atributo Descripción del Atributo
Persona_posicion PK Identidad del jugador
Id_partido_posicion PK Identidad del partido
Posición Lugar en el campo de juego de un jugador
Minuto_partido_posicion Minuto en el que se realiza un cambio de posición

Tabla 4. Entidades
MODELO CONCEPTUAL

Ilustración 10.Modelo Entidad Relación Extendido – Modelo conceptual del proyecto


Mundial de Futbol (Fuente: Elaboración Propia) (Ver Anexo 1)
PROCESO DE NORMALIZACIÓN

Para esta segunda entrega realizamos el modelo lógico y físico en el programa MySQL Workbech,
Datagrip - Postgres, inicialmente debemos tener claro que el proceso de normalización se centra
en simplificar los datos, con esto lograremos optimizar el funcionamiento de nuestra base de
datos, reducir el almacenamiento, identificar y corregir datos repetidos y errores lógicos. Es
importante tener en cuenta que el momento de realizar la simplificación no debe tener perdida de
datos para la continuidad del funcionamiento del funcionamiento.

Se corrigió el atributo edad, por fecha de nacimiento en la entidad “Persona”, esto con el fin de
realizar el cálculo interno y garantizar una actualización optima en los datos personales de cada
una de las personas que se incluirán en dicho torneo.

Las siguientes entidades tenían una cardinalidad de N:M, por lo cual se crearon nuevas entidades
débiles según lo establecido en la normalización.

Ilustración 12. Normalizacion1. Calificación-Equipos (Elaboración propia)


Ilustración 13. Normalizacion2. Anfitrión-Equipos (Elaboración propia)

Ilustración 14. Normalizacion3. Partidos-Equipos (Elaboración propia)

Ilustración 15.Normalizacion4. Personas-Partido (Elaboración propia)


Ilustración 16. Normalización5. Personas-Tarjetas (Elaboración propia)

Ilustración 17. Normalización 6. Personas-Posición (Elaboración propia)

Ilustración 18. Normalización7. Personas-Titularidades (Elaboración propia)

En el modelo conceptual se identificó una entidad llamada “Estadísticas” dicha entidad contenía
atributos estadísticos como los son tarjetas, puntos, goles, etc. En el proceso de normalización se
eliminó dicha entidad pues estos se pueden visualizar por medio de las consultas de las otras
entidades establecidas.

En el proceso de maximización tomamos el modelo conceptual inicial e identificamos que “Rol”


era un atributo multivaluado y hacia parte de la entidad “Persona”. Sin embargo, al momento de
realizar la normalización se creó una nueva tabla llamada “Roles” que contiene un título de rol y
una descripción.
CARDINALIDAD

CLASIFICACIONES

Nombre de Tipo de PK FK 1:1 1:M N:M


columna datos
Equipo VARCHAR SI SI
clasificado (15)
Categoria_ VARCHAR SI SI
desarrollo (15)

GRUPOS

Nombre de Tipo de PK FK 1:1 1:M N:M


columna datos
Grupo VARCHAR SI SI
(1)
Descripcion VARCHAR
(45)

CONTINENTES

Nombre de Tipo de PK FK 1:1 1:M N:M


columna datos
Nombre_continente VARCHAR SI SI
(15)
Numero_pais INT

Pais_clasificados INT

ESTADISTICAS
Nombre de columna Tipo de PK FK 1:1 1:M N:M
datos
Pais_estadistica VARCHAR SI SI
(15)
Parti_jugados INT

Parti_ganados INT
Parti_perdidos INT
Parti_empatados INT
Goles_favor INT
Goles_contra INT
Diferecia_goles INT
Tarjeta_amarillas INT
Sanciones INT
Puntos INT
Estados_clasificacion INT
Posicion INT
*La Entidad Estadísticas fue removida debido a que sus atributos correspondían a consultas sobre
datos de otras tablas.

ESTADIOS

Nombre de Tipo de PK FK 1:1 1:M N:M


columna datos
Nombre_estadio VARCHAR SI SI
(15)
Ciudad VARCHAR
(15)
Capacidad INT
Altitud INT
Temperatura_prom FLOAT

ANFITRION

Nombre de Tipo de PK FK 1:1 1:M N:M


columna datos
Nombre_anfitrion VARCHAR SI SI
(15)
Estadios_anfitrion VARCHAR
(15)
Año_mundial INT
BOLETERIA

Nombre de Tipo de PK FK 1:1 1:M N:M


columna datos
Id_boleteria INT SI SI

Entradas_vendidas INT

Total_recaudo INT

ALQUILER

Nombre de columna Tipo de PK FK 1:1 1:M N:M


datos
Id_alquiler INT SI SI

Nombre_estadio_alquiler VARCHAR
(15)
Tarifa INT
Fecha_incio DateTime
Fecha_fin DateTime

EQUIPOS

Nombre de Tipo de PK FK 1:1 1:M N:M


columna datos
Pais VARCHAR SI SI
(15)
Bandera VARCHAR
(80)
Escudo VARCHAR
(80)
GOLES

Nombre de Tipo de PK FK 1:1 1:M N:M


columna datos
Id_gol INT SI SI

Jugador_anotador VARCHAR
(20)
Id_partido_goles INT
Minuto_partido_gol TIME
Equipo_anotador VARCHAR
(15)
Equipo_perdedor VARCHAR
(15)

PARTIDOS

Nombre de Tipo de PK FK 1:1 1:M N:M


columna datos
Id_partido INT SI SI

Fecha_partido DateTime
Equipo_local VARCHAR
(15)
Equipo_visitante VARCHAR
(15)

TARJETAS

Nombre de columna Tipo de PK FK 1:1 1:M N:M


datos
Persona_amonestada VARCHAR SI SI
(20)
Id_partido_tarjeta INT SI SI
Minuto_partido_tarjeta TIME
Color_tarjeta VARCHAR
(15)

CAMBIOS

Nombre de columna Tipo de Restricción PK FK 1:1 1:M N:M


datos
Id_cambios VARCHAR SI SI
(15)
Jugador saliente VARCHAR
(20)
Jugador_entrante VARCHAR
Minuto_partido_cambio TIME
Conteo_cambio INT <= 4

PERSONA

Nombre de Tipo de Restricción PK FK 1:1 1:M N:M


columna datos
Pasaporte VARCHAR SI SI
(20)
Nombre_persona VARCHAR
(20)
Apellido_persona VARCHAR
(25)
Edad INT
Camiseta INT =< 23
Rol VARCHAR
(15)
Nacionalidad VARCHAR
(15)

POSICIONES
Nombre de columna Tipo de PK FK 1:1 1:M N:M
datos
Persona_posicion VARCHAR SI SI
(20)

Id_partido_posicion INT SI SI
Posicion VARCHAR
(15)
Minuto_partido_posicion TIME

TITULARIDADES

Nombre de Tipo de PK FK 1:1 1:M N:M


columna datos
Persona_titular VARCHAR SI SI
(20)
Titularidad VARCHAR
(45)
Id_partido_titular INT
Minuto_partido TIME

LESIOINES

Nombre de Tipo de PK FK 1:1 1:M N:M


columna datos
Persona_lesionada VARCHAR SI SI
(15)
Tipo_lesion VARCHAR
(45)
Fecha_lesion DateTime

SANCIONES

Nombre de Tipo de PK FK 1:1 1:M N:M


columna datos
Persona_sancionada VARCHAR SI SI
(15)
Tipo_sancion VARCHAR
(45)
Estado_sancion TINYINT
Fecha_sancion DateTime

BAJAS

Nombre de Tipo de PK FK 1:1 1:M N:M


columna datos
Persona_en_baja VARCHAR SI SI
(15)
Estado_baja TINYINT

Motivo_baja VARCHAR
(20)
Fecha_baja DateTime
Script para poblado de entidades (Ver Anexo 5):

Debido a la gran cantidad de registros se reporta únicamente en el documento Anexo.

Acciones mínimas para implementar:

1. crear, consultar, eliminar y modificarlos datos de jugador, un técnico, etc.


INSERT INTO personas(pasaporte, nombres_persona, apellidos_persona,
fecha_nacimiento, camiseta, nacionalidad, rol, nombre_equipo)
VALUES('11119922','Dani','Carvajal','1992-01-
11',2,'Español','Defensor','España');

SELECT * FROM personas WHERE pasaporte = '11119922';

UPDATE personas SET camiseta = 3 WHERE pasaporte = '11119922';

DELETE FROM personas WHERE pasaporte = '11119922';

INSERT INTO personas(pasaporte, nombres_persona, apellidos_persona,


fecha_nacimiento, camiseta, nacionalidad, rol, nombre_equipo)
VALUES('3091949','Jose Nestor','Pekerman','1949-09-
03',null,'Argentino','Tecnico','Colombia');

SELECT * FROM personas WHERE pasaporte = '3091949';

UPDATE personas SET camiseta = 3 WHERE pasaporte = '3091949';

DELETE FROM personas WHERE pasaporte = '3091949';

2. crear, consultar, eliminar y modificar los datos de un equipo, un estadio, etc.


INSERT INTO equipos(pais, grupo_equipo,continente_equipo)
VALUES('Colombia','H','América');

SELECT * FROM equipos WHERE pais = 'Colombia';

UPDATE equipos SET bandera = '/babderas/colombia.png' WHERE pais =


'Colombia';

DELETE FROM equipos WHERE pais = 'Colombia';

INSERT INTO estadios(nombre_estadio, ciudad, altitud, capacidad,


temperatura_prom, pais_estadio) VALUES('Rostov
Arena','Moscu',156,81000,21,'Rusia');
SELECT * FROM estadios WHERE nombre_estadio = 'Rostov Arena';

UPDATE estadios SET capacidad = 82000 WHERE nombre_estadio =


'Rostov Arena';

DELETE FROM estadios WHERE nombre_estadio = 'Rostov Arena';

3. crear, consultar, eliminar y modificar datos de ciudad o un país donde se desarrolle


el torneo.
INSERT INTO anfitriones(anfitrion_id, ano_mundial,nombre)
VALUES(22,2018,'Rusia');

SELECT * FROM anfitriones WHERE anfitrion_id = 22;

UPDATE anfitriones SET nombre = 'Rusia' WHERE anfitrion_id = 22;

DELETE FROM anfitriones WHERE anfitrion_id = 22;

4. crear, consultar, eliminar y modificar los datos de un partido jugado o por jugar.
INSERT INTO partidos(id_partido, fecha_partido, entradas_vendidas,
total_recaudo, nombre_estadio,equipo_1,equipo_2,id_fase)
VALUES(1,'2018-06-14',77137,611729,'Rostov Arena','Rusia','Arabia
Saudita',1);

SELECT * FROM partidos WHERE id_partido = 1;

UPDATE partidos SET entradas_vendidas = 83250 WHERE id_partido = 1;

DELETE FROM partidos WHERE id_partido = 1;

5. crear, consultar, eliminar y modificar los datos del alquiler de un estadio.


INSERT INTO alquileres(id_alquiler, tarifa, fecha_ini, fecha_fin,
nombre_estadio, ciudad_alquiler) VALUES(1,50000,'2018-06-14','2018-
06-15','Rostov Arena','Moscú (Luzhniki)');

SELECT * FROM alquileres WHERE id_alquiler = 1;

UPDATE alquileres SET tarifa = 52000 WHERE id_alquiler = 1;

DELETE FROM alquileres WHERE id_alquiler = 1;


Script consultas (Ver Anexo 6):

1. Listar los datos de los estadios, para un rango de ciudades y ordenado por ciudad.

SELECT *

FROM estadios

WHERE ciudad IN ('Moscu','Samara','Sochi')

ORDER BY ciudad ASC

2. Listar la cantidad partidos por grupo por ciudad.


SELECT

count(partidos.id_partido) total_partidos,

equipos1.grupo_equipo,

estadios.ciudad

FROM partidos

INNER JOIN equipos equipos1 ON partidos.equipo_1 = equipos1.pais

INNER JOIN equipos equipos2 ON partidos.equipo_2 = equipos2.pais

INNER JOIN estadios ON estadios.nombre_estadio =


partidos.nombre_estadio

INNER JOIN fases on partidos.id_fase = fases.id_fase

WHERE fases.id_fase = 1

GROUP BY (equipos1.grupo_equipo, estadios.ciudad)

order by equipos1.grupo_equipo

3. Listar la cantidad promedio de días que un jugador fue suspendido o está


incapacitado en un rango de fechas dado.
SELECT EXTRACT(YEAR FROM fecha) AS fecha_general,

to_timestamp(AVG(EXTRACT(epoch FROM fecha)))::DATE AS


avg_purchase_date

FROM bajas

INNER JOIN personas ON bajas.persona_baja = personas.pasaporte

WHERE personas.pasaporte = '52199210'


GROUP BY bajas.fecha

4. Listar el precio total del alquiler acumulado de todos los estadios contratados por
fecha en un rango de fechas dado, acumulado por ciudad y total.
SELECT

sum(tarifa),

ciudad_alquiler

FROM alquileres

WHERE alquileres.fecha_ini between '2018-06-14' and '2018-06-19'

AND alquileres.fecha_fin between '2018-06-14' and '2018-06-19'

group by (alquileres.ciudad_alquiler)

5. Listar los datos técnicos del campeonato.


SELECT

grupos.descripcion,

count(goles.id_gol)

FROM goles

INNER JOIN equipos on goles.equipo_anotador = equipos.pais

INNER JOIN grupos ON equipos.grupo_equipo = grupos.grupo

WHERE minuto_partido_gol < 45

GROUP BY grupos.grupo

ORDER BY grupos.grupo

6. Listar las tarjetas acumuladas amarillas o rojas de un jugador.


SELECT

personas.pasaporte,

personas.nombres_persona,

personas.apellidos_persona,

count(tarjetas.id_tarjeta),

tarjetas.color_tarjeta

FROM tarjetas
INNER JOIN color_tarjeta on tarjetas.color_tarjeta =
color_tarjeta.color

INNER JOIN personas ON tarjetas.jugador_tarjeta =


personas.pasaporte

WHERE personas.pasaporte = '88198823'

GROUP BY (personas.pasaporte, tarjetas.jugador_tarjeta,


tarjetas.color_tarjeta)

ORDER BY tarjetas.jugador_tarjeta

7. Listar el valor recaudado en cada partido por estadio por fecha.


SELECT

CAST(partidos.fecha_partido AS DATE) AS "Fecha Partido",

partidos.total_recaudo AS "Total Recaudo",

e.nombre_estadio AS Estadio,

e.ciudad AS Ciudad

FROM partidos

INNER JOIN estadios e on partidos.nombre_estadio = e.nombre_estadio

ORDER BY partidos.fecha_partido;
REFERENCIAS BIBLIOGRÁFICAS

Garcia, M., & Arévalo, J. (15 de octubre de 2013). postgis.readthedocs.io. Obtenido de


https://postgis.readthedocs.io/es/latest/: https://postgis.readthedocs.io/es/latest/bases-de-
datos/teoria_bases_datos.html

Grajales, J. (3 de marzo de 2018). Slideshare. Obtenido de slideshare.net:


https://es.slideshare.net/JeisonGrajales/bases-de-datos-dinamicas-y-
estaticas#:~:text=%EF%81%B5%20Las%20bases%20de%20datos,realizar%20proyeccione
s%20y%20tomar%20decisiones.

Gutierrez, P. (5 de noviembre de 2013). Genbeta. Obtenido de


https://www.genbeta.com/desarrollo/fundamento-de-las-bases-de-datos-modelo-entidad-
relacion

Normasapa. (s.f.). normasapa.com. Obtenido de https://normasapa.com/

Normasapa.net. (s.f.). Normasapa.net. Recuperado el 2019, de http://normasapa.net/normas-apa-


2016/

Raffino, M. E. (14 de febrero de 2020). Concepto.de. Obtenido de https://concepto.de/base-de-


datos/
Anexo 1. Modelo Conceptual

Estado_clasificación
Posición (Ranking)
# Equipo_clasificado

Tarjetas_amarillas
Diferencia_goles
# Desarrollo CLASIFICACIONES

Tarjetas_rojas
Goles_contra
Goles_favor

Sanciones
Puntos
1

Obtienen
# Pais_estadistica
Parti_jugados 
1
# Grupo
1
Tienen ESTADÍSTICAS Parti_ganados # Nombre_anfitrión
GRUPOS Pertenecen Parti_perdidos Estadios_anfitrión

Bandera
ANFITRIÓN

Escudo
Descripción Parti_empatados Año_mundial

País
1
Tienen
M 1 M
M
# Nombre_estadio
# Nombre_continente Ciudad
1 M 1 M
Número_paises CONTINENTES Tienen EQUIPOS Ofrecen ESTADIOS Capacidad # id_Alquiler
Paises_clasificados Altitud M Nombre_estadio_alquiler
Temperatura_prom ALQUILER Tarifa
Fecha_Inicio
1 1 M 1 1 Fecha_Fin
Reciben

Tienen Tienen

Obtienen
# Id_cambio
M Jugador_saliente
# Id_gol Tienen M CAMBIOS Jugador_entrante 
Jugador_anotador Minuto_partido_cambio 
Id_partido_goles Conteo_cambio
Anotan M GOLES Minuto_partido_gol
# Persona_titular
Equipo_anotador
Titularidad
Id_partido_titularidad TITULARIDADES M
Tienen Equipo_perdedor
M
Minuto_Partido

Rol
Tienen
Tienen
M M 1 1 M M 1 1 1
Pasaporte
Nombres_persona # Id_partido Id_boletería
# Persona_lesionada
Apellidos_persona Fecha_partido
Tipo de lesión LESIONES Tienen 1 PERSONA Edad PARTIDOS Equipo_Local  BOLETERÍA Entradas_vendidas
Fecha_lesión M Total_recaudo
Camiseta Equipo_Visitante
Nacionalidad
1 M 1 M M M M 1

# Persona_sancionada # persona_amonestada
Tipo de sanción M M # Id_partido_tarjeta
Tienen Participan Tienen
Estado_sanción SANCIONES TARJETAS Minuto_partido_tarjeta
Fecha_sanción Color_tarjeta

Tienen
# Persona_en_baja
Estado_baja 1
Motivo_baja BAJAS Obtienen
# Fecha_baja
M M

# Persona_posicion
POSICIONES # Id_partido_posicion
Tienen
Posición
Minuto_partido_posicion

También podría gustarte