PROYECTO FINAL

FINAL BASE DE DATOS II

  1. Definir el enunciado del problema a sistematizar según las necesidades detectadas. (Debe ser Claro y tener mínimo 8 tablas) (Entrega 1)

'Agendamiento Consulta Externa'

  • La  base de datos que se crea  es para sistematizar el servicio de consulta externa, donde a cada medico con su especialidad se le creara una agenda con fecha y hora y a quien se le asigna los pacientes que necesiten ser atendidos, cada paciente tendrá asignado un medico, una agenda y con su aseguradora.

2.    REALIZAR LO SIGUIENTE:

2.1. Darle un nombre a la base de datos.

  • Mi base de datos se llama:

    'Agendamiento Consulta Externa'

2.2. Listado de tablas que llevara la BD. (Cuales son referenciales y cuales son de movimiento)

  • Referenciales: MEDICO

                                     ESPECIALIDAD

                                     PACIENTE

                                   ASEGURADORA

  • Movimiento: AGENDA

                                    ESPECIAL_PACIENTE

                                   PACIENTE_ASEGURADORA

2.3. Diseñar el diccionario de datos de cada tabla (campo, nombre el campo, tipo, tamaño y descripción).

2.4. Montar o diseñar el modelo entidad relación.

2.5. Dibujar el Diagrama relacional.

En el siguiente archivo encuentra las tablas anteriores con toda la información. 

3.    Crear la BD y las tablas respectivas en mysql (guardar evidencias del código mysql con el que resuelva dicha actividad) (Entrega 2

  • Se agrega el campo jornada  en la tabla MEDICO con el tipo de dato ENUM ('diurna','nocturna')
Sintaxis:  
alter table paciente add estado_civil enum ('diurna','nocturna');
  • Se le agrega los datos al campo jornada en la tabla medico a idmedico
  • Se agrega campo Estado_civil a la tabla PACIENTE con el tipo de dato SET ('soltero','casado','viudo','divorciado','separado')
Sintaxis:
alter table paciente add estado_civil set ('soltero','casado','viudo','separado','divorciado');
  • Se le agrega los datos al campo estado civil de la tabla paciente  a idpaciente

4.    Diseñar ejercicios en los que se apliquen los diferentes comandos que se utilizaron durante el semestre con su respectivo análisis y resultados. (Entrega 3)

TIPO DE DATO ENUM 

  • Consulte a todos los médico con la jornada nocturna usando el número de la enumeración. (Tipo dato Enum)
  • Consulte a todos los médico con la jornada diurna usando el número de la enumeración. (Tipo dato Enum)

Análisis:

1. Cual es el nombre de la tabla

  • Medico

2. Que campos (campos contiene la información solicitada) y de que tabla

  • Campo: Jornada
  • Tabla: Medico

3. Condiciones (es) adicionales si las hay

  • Jornada=2
  • Jornada=1

4. Comando(s)

  • Select, from where

Sintaxis:

select * from medico where jornada=2

select * from medico where jornada=1

TIPO DE DATO SET

  • Consulte a todos los pacientes con con estado civil usando el número de la enumeración. (Tipo de dato Set)

Análisis:

1. Cual es el nombre de la tabla

  • Paciente

2. Que campos (campos contiene la información solicitada) y de que tabla

  • Campo: Estado_civil
  • Tabla: Paciente

3. Condiciones (es) adicionales si las hay

  • N/A

4. Comando(s)

  • Select, from where, like

Sintaxis:

select * from paciente where estado_civil like '%soltero%';

select * from paciente where estado_civil like '%separado%'; 

select * from paciente where estado_civil like '%divorciado%'; 

select * from paciente where estado_civil like '%casado%'; 

select * from paciente where estado_civil like '%viudo%'; 


MANEJO DE FECHAS

  • Para saber cuantos años tiene cada uno que están en la tabla paciente a la fecha

Análisis:

1. Cual es el nombre de la tabla

  • Paciente

2. Que campos (campos contiene la información solicitada) y de que tabla

  • Campo: Nombre, Fecha de nacimiento
  • Tabla: Paciente

3. Condiciones (es) adicionales si las hay

  • N/A

4. Comando(s)

  • select, from

Sintaxis:

select nombre, year(current_date()) - year (fecha_nacimiento) year from paciente;

  • Cuantas personas nacieron entre 1970 y 1982

Análisis:

1. Cual es el nombre de la tabla

  • Paciente

2. Que campos (campos contiene la información solicitada) y de que tabla

  • Campo: Nombre, Fecha de nacimiento
  • Tabla: Paciente

3. Condiciones (es) adicionales si las hay

  • que estén entre 1970  y 1982

4. Comando(s)

  • select, count, from, between, and

Sintaxis:

select count(*) from paciente where year(fecha_nacimiento) between '1970' and 1982;

  • Contar cuantas personas tiene <= a 52 años y su estado civil sea casado

Análisis:

1. Cual es el nombre de la tabla

  • Paciente

2. Que campos (campos contiene la información solicitada) y de que tabla

  • Campo: Fecha de nacimiento, estado_civil
  • Tabla: Paciente

3. Condiciones (es) adicionales si las hay

  • <= a 52 años y su estado civil = casado
4.  Comando(s)
  • select, count, where, and

Sintaxis:

select count(*) from paciente where year(current_date) - year(fecha_nacimiento)<=52 and estado_civil='casado';

MANEJO DE VISTAS

  • Crear una vista con el nombre de aseguradoranom  que guarde todos los datos del aseguradora = sura

Análisis:

1. Cual es el nombre de la tabla

  • aseguradoranom

2. Que campos (campos contiene la información solicitada) y de que tabla

  • Campo: idaseguradora, idpaciente,nom_aseguradora
  • Tabla:aseguradora

3. Condiciones (es) adicionales si las hay

  • que guarde todos los datos del aseguradora = sura 

4. Comando(s)

  • create, select, where, from, as

Sintaxis:

create view aseguradoranom  as select * from aseguradora where nom_aseguradora='sura';

MANEJO DE CADENAS

  • Listar los medico que que sus id comiencen 985, 112

Análisis:

1. Cual es el nombre de la tabla

  • medico

2. Que campos (campos contiene la información solicitada) y de que tabla

  • Campo: idmedico
  • Tabla: medico

3. Condiciones (es) adicionales si las hay

  • que sus id comiencen 985, 112 

4. Comando(s)

  • select, where, substr, in

Sintaxis:

select idmedico,nombre from medico where substr(idmedico,1,3) in ('985', '112');

  • Cuantos son medicos si id sean  al comienzo 985,112

Análisis:

1. Cual es el nombre de la tabla

  • medico

2. Que campos (campos contiene la información solicitada) y de que tabla

  • Campo: idmedico
  • Tabla: medico

3. Condiciones (es) adicionales si las hay

  • que sus id comiencen 985, 112

4. Comando(s)

  • select, counrt, where, substr

Sintaxis:

select count(*) from medico where substr(idmedico, 1,3) in('985','112');

CREAR TABLA A PARTIR DE OTRA TABLA (Create - Insert)

  • Consultamos la tabla de la que queremos extraer la información para crear la nueva tabla. 
  • Comando para crear la tabla con la información que queremos de otra. 

Análisis:

1. Cual es el nombre de la tabla

  • paciente

2. Que campos (campos contiene la información solicitada) y de que tabla

  • Campo: nom_aseguradora
  • Tabla: paciente

3. Condiciones (es) adicionales si las hay

  • N/A

4. Comando(s)

  • select, distinct, as, from

Sintaxis:

create table pacienteatendido

select distinct nom_aseguradora as nombre

from paciente;

CREAR TABLA A PARTIR DE OTRA TABLA (Create - Insert)

  • Crear una tabla con el nombre de las aseguradoras y cuántos pacientes tiene afiliados.

Análisis:

1. Cual es el nombre de la tabla

  • paciente

2. Que campos (campos contiene la información solicitada) y de que tabla

  • Campo: nom_aseguradora
  • Tabla: paciente

3. Condiciones (es) adicionales si las hay

  • cuántos pacientes tiene afiliados

4. Comando(s)

  • select, from, as, count, group by
Sintaxis: 
create table cantidadasegura
 select nom_aseguradora as nombre,count(*) as cantidad 
 from paciente
 group by nom_aseguradora;

5.    Sustentación

En este archivo se encuentra las evidencias del proyecto final TEE

En este archivo se encuentra la BD creada

Liliana Taborda Sanchez,Desarrollo de Software, Medellin Colombia 2019
Creado con Webnode
¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar