ACTIVIDAD I


Realizar el diseño e implementación de una base de datos que guarde información de los pacientes que ingresan en un hospital. En este hospital, los pacientes que llegan al servicio de urgencias del hospital son examinados y, dependiendo de su estado de salud, son ingresados en la planta correspondiente (traumatología, cuidados intensivos, ...) bajo la supervisión de un médico responsable.

  1. Cada médico será responsable en general de varios pacientes.
  2. Un paciente puede ingresar varias veces en el hospital y tener asignado en cada ocasión diferentes médicos

REALIZAR LO SIGUIENTE:

  1. Darle un nombre a la base de datos.
  2. Listado de tablas que llevara la BD. (cuáles son referenciales y cuáles son de movimiento)
  3. Diseñar la estructura de cada tabla o diccionario de datos teniendo en cuenta el siguiente formato: https://sistemasremington.webnode.com/_files/200000195-a8bc0a9bba/Diccionario%20de%20Datos.xlsx
  4. Montar o diseñar el modelo entidad relación.
  5. Dibujar el diagrama relacional.
  6. Crear la BD y las tablas respectivas en MySQL.
  7. Insertarle 10 registros a cada tabla maestra .
  8. Crear los siguientes procedimientos almacenados que permitan manejar la información de cada una de las tablas maestras.
  • Procedimiento para insertar
  • Procedimiento para listar
  • Procedimiento para consultar
  • Procedimiento para eliminar
  • Procedimiento para modificar

Solución actividad I

Enlace para ver la base de datos, el diccionario de datos, la información de la base de datos, el módelo entidad - relación y el diagrama relacional:

https://drive.google.com/open?id=1E0TdO2zhYPw4ZoDZxBO46WVVs7J8HcR3


Modelo entidad - relación


Diagrama relacional


Análisis de querys


Ejercicio 1:

Crear una consulta que permita visualizar el nombre del paciente, la fecha de ingreso del paciente, la fecha de alta del paciente y el nombre del médico que lo atendió.

Análisis:

1. ¿Qué tablas va a utilizar y qué se va a consultar?

  • paciente.nombre
  • paciente_interno.fecha_ingreso
  • paciente_interno.fecha_alta
  • medico.nombre

2. ¿Qué tabla se ve afectada?

Las tablas afectadas son paciente, paciente_interno y medico.

3. ¿Cuál es la condición?

No aplican condiciones.

4. ¿Cómo se relacionan esas tablas?

paciente.id = paciente_interno.id_paciente AND paciente_interno.id_medico = medico.id

5. ¿Qué sintaxis se va a utilizar?

select paciente.nombre, paciente_interno.fecha_ingreso, paciente_interno.fecha_alta, medico.nombre from 'paciente_interno', 'paciente', 'medico' WHERE paciente.id = paciente_interno.id_paciente AND paciente_interno.id_medico = medico.id;



Ejercicio 2:

Crear una consulta que permita visualizar la ubicación del paciente, el nombre del paciente, la fecha de ingreso del paciente, la fecha de alta del paciente y el nombre del médico que lo atendió.

Análisis:

1. ¿Qué tablas va a utilizar y qué se va a consultar?

  • ubicacion.nombre
  • paciente.nombre
  • paciente_interno.fecha_ingreso
  • paciente_interno.fecha_alta
  • medico.nombre

2. ¿Qué tabla se ve afectada?

Las tablas afectadas son paciente, paciente_interno, medico y ubicacion.

3. ¿Cuál es la condición?

No aplican condiciones.

4. ¿Cómo se relacionan esas tablas?

paciente.id = paciente_interno.id_paciente AND paciente_interno.id_medico = medico.id AND id_ubicacion = ubicacion.id;

5. ¿Qué sintaxis se va a utilizar?

select ubicacion.nombre AS Ubicacion_del_paciente, paciente.nombre AS Nombre_del_paciente, paciente_interno.fecha_ingreso, paciente_interno.fecha_alta, medico.nombre AS Nombre_del_Medico from 'paciente_interno', 'paciente', 'medico', 'ubicacion' WHERE paciente.id = paciente_interno.id_paciente AND paciente_interno.id_medico = medico.id AND id_ubicacion = ubicacion.id;


Ejercicio 3:

Crear una consulta que permita visualizar la ubicación del paciente, el nombre del paciente que empiece por la letra 'A', la fecha de ingreso del paciente, la fecha de alta del paciente y el nombre del médico que lo atendió.

Análisis:

1. ¿Qué tablas va a utilizar y qué se va a consultar?

  • ubicacion.nombre
  • paciente.nombre
  • paciente_interno.fecha_ingreso
  • paciente_interno.fecha_alta
  • medico.nombre

2. ¿Qué tabla se ve afectada?

Las tablas afectadas son paciente, paciente_interno, medico y ubicacion.

3. ¿Cuál es la condición?

La condición es que los nombres de los pacientes empiecen por la letra 'A'.

4. ¿Cómo se relacionan esas tablas?

paciente.id = paciente_interno.id_paciente AND paciente_interno.id_medico = medico.id AND id_ubicacion = ubicacion.id AND paciente.nombre LIKE 'a%'

5. ¿Qué sintaxis se va a utilizar?

select ubicacion.nombre AS Ubicacion_del_paciente, paciente.nombre AS Nombre_del_paciente, paciente_interno.fecha_ingreso, paciente_interno.fecha_alta, medico.nombre AS Nombre_del_Medico from 'paciente_interno', 'paciente', 'medico', 'ubicacion' WHERE paciente.id = paciente_interno.id_paciente AND paciente_interno.id_medico = medico.id AND id_ubicacion = ubicacion.id AND paciente.nombre LIKE 'a%';


Ejercicio 4:

Crear una consulta que permita visualizar el nombre del médico, la especialidad del médico y la ubicación del médico.

Análisis:

1. ¿Qué tablas va a utilizar y qué se va a consultar?

  • medico.nombre
  • medico.especialidad
  • ubicacion.nombre

2. ¿Qué tabla se ve afectada?

Las tablas afectadas son medico, ubicación y medico_ubicacion.

3. ¿Cuál es la condición?

No aplican condiciones.

4. ¿Cómo se relacionan esas tablas?

medico.id = medico_ubicacion.id_medico AND medico_ubicacion.id_ubicacion = ubicacion.id

5. ¿Qué sintaxis se va a utilizar?

select medico.nombre AS Nombre_del_medico, medico.especialidad AS Especialidad_del_medico, ubicacion.nombre AS Ubicacion_del_medico from 'medico', 'ubicacion', 'medico_ubicacion' WHERE medico.id = medico_ubicacion.id_medico AND medico_ubicacion.id_ubicacion = ubicacion.id;


Ejercicio 5:

Crear una consulta que permita visualizar el nombre del paciente, la fecha de ingreso del paciente y la fecha de alta del paciente cuya condición sea NULL.

1. ¿Qué tablas va a utilizar y qué se va a consultar?

  • paciente.nombre
  • paciente_interno.fecha_ingreso
  • paciente_interno.fecha_alta

2. ¿Qué tabla se ve afectada?

Las tablas afectadas son paciente_interno y paciente.

3. ¿Cuál es la condición?

La condición es que la fecha de alta del paciente sea NULL.

4. ¿Cómo se relacionan esas tablas?

paciente_interno.fecha_alta IS NULL AND paciente.id = paciente_interno.id_paciente

5. ¿Qué sintaxis se va a utilizar?

select paciente.nombre AS Nombre_del_paciente, paciente_interno.fecha_ingreso, paciente_interno.fecha_alta AS Paciente_aun_interno from 'paciente_interno', 'paciente' WHERE paciente_interno.fecha_alta IS NULL AND paciente.id = paciente_interno.id_paciente;



¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar