TIA 2: manipulación de la base de datos para
utilizando comandos DML.
Propósito:
Manipular las
bases de datos y dar solución a las consultas propuestas utilizando el DML del
SQL.
Instrucciones:
Crear un documento que contenga las sentencias con la inserción
de mínimo 5 registros por tabla y las
respuestas a las preguntas propuestas sobre la base de datos propuestas en la
TIA 2 y que ya tiene creadas.
1.
Una EPS está
interesada en diseñar una base de datos para manejar toda la información
relacionada con todas las incapacidades de sus afiliados.
Se
dispone de la siguiente información:
1.
Un mismo afiliado puede estar vinculado a varias empresas al tiempo y cada
empresa lo debe afiliar a la EPS independiente de la otra.
2.
Para que una empresa pueda afiliar a sus trabajadores (afiliados) a la EPS
ella también debe estar afiliada. A cada empresa se le asigna un número
patronal y a cada afiliado un número de afiliación.
3. Las incapacidades las expiden los
médicos a los afiliados. Un afiliado
puede tener tantas incapacidades como sean necesarias del mismo o diferente médico.
4.
Los médicos tienen una especialidad que manejan con un código y el lugar
que les otorgó la especialidad.
5.
Una incapacidad tiene los siguientes datos:
6.
Número patronal de la empresa, número afiliación del trabajador, código
del médico, fecha inicial, duración y diagnóstico.
7.
Las incapacidades se expiden para determinado afiliado en determinada
empresa.
2. Se tiene la siguiente base de datos:
|
SUCURSAL
|
||
|
cod_sucursal
|
direccion_sucursal
|
telefono_sucursal
|
|
S7
|
CARRERA65
|
2654897
|
|
S8
|
CALLE10
|
3315897
|
|
S9
|
CARRERA80
|
4282535
|
|
CLIENTE
|
|||
|
num_cedula
|
nom_cliente
|
direccion
|
cod_sucursal
|
|
3458979
|
ARMANDO RUIZ
|
CARRERA 80#5-7
|
S7
|
|
5689254
|
LUIS PEREZ
|
CALLE 85-2
|
S9
|
|
5879125
|
JUAN RUIZ
|
CALLE 10#5-9
|
S8
|
|
4278888
|
ALBA ACOSTA
|
CALLE 23#58
|
S7
|
|
487878
|
LUISA PEÑA
|
CALLE27#45
|
S9
|
|
|
|
|
ALQUILER
|
|
|
|
Cod
alquiler
|
Num
placa
|
Fecha
alquiler
|
Fecha
devolucion
|
Valor
alquiler
|
Num
cedula
|
|
AFT852
|
29/05/2004
|
10/06/2004
|
600000
|
||
|
621
|
EDT222
|
30/05/2004
|
10/06/2004
|
450000
|
5879125
|
|
841
|
WER625
|
28/05/2004
|
08/06/2004
|
700000
|
3458979
|
|
522
|
TBC455
|
29/05/2004
|
09/06/2004
|
600000
|
5689254
|
|
523
|
TBC455
|
30/05/2004
|
10/06/2004
|
450000
|
5879125
|
|
524
|
TBC455
|
28/05/2004
|
08/06/2004
|
700000
|
3458979
|
|
525
|
TBC455
|
01/06/2004
|
10/06/2004
|
800000
|
5689254
|
|
526
|
EDT222
|
01/07/2004
|
10/07/2004
|
700000
|
5879125
|
|
AUTO
|
||||
|
num_placa
|
modelo
|
color
|
marca
|
valor
|
|
AFT852
|
95
|
ROJO
|
RENAULT
|
40000000
|
|
EDT222
|
91
|
BLANCO
|
RENAULT
|
35000000
|
|
WER625
|
99
|
AZUL
|
CORSA
|
45000000
|
|
TBC455
|
99
|
ROJO
|
CHEVETTE
|
38000000
|
|
TAG530
|
99
|
AZUL
|
CHEVETTE
|
40000000
|
DML
para el punto 1
- Hallar los médicos que
atendieron al trabajador Luis.
- Hallar los nombres de los trabajadores que tienen incapacidades con
una duración mayor que 10 días.
- Borrar las incapacidades con una duración menor a 5 días.
DML
para el punto 2
2.
Hallar los datos de
los clientes Alba Acosta, Juan Ruiz y Armando Ruiz.
3.
Halle los nombres de
Los clientes que alquilaron Renault.
4.
Actualice
la marca de los autos chevette por corsa.
5.
Borre
los alquileres con fecha menor a 01/01/2013
Criterios de valoración:
|
Items
de Valoración
|
Cumple
|
No cumple
|
|
Identifica las operaciones que
utiliza el DDL
|
|
|
|
Desarrolla cada respuesta de
la situación propuesta de acuerdo a la representación relacional y las
peticiones dadas por el cliente.
|
|
|
|
Evidencia trabajo en equipo.
|
|
|
|
Entrega
de manera puntual la actividad.
|
|
|
|
Entrega la actividad con buena presentación.
|
|
|
|
Registra otras fuentes de consulta.
|
|
|
Tiempo estimado:
4 horas
Evidencia:
Un entregable, un documento en Word con la solución a las consultas del modelo
relacional.
DESARROLLO ACTIVIDAD
Inserción de datos
insert into afiliado (nombre) values('Armando'), ('Sofa'), ('Alexa'), ('Armando'), ('Sofa'), ('Alexa')
insert into empresa (nombre, afiliado_cod) values('Cafe salud', 7), ('Salud y vida', 7), ('Salucop', 11), ('SaludTotal', 7), (‘Nueva eps’, 11)
-- Insertamos los
medicos con el codigo de la especialidad (llave foranea)
insert into medico (nombre_medico,
especialidad_codigo)values('Omar Perez', 7), ('Alejandra Naranjo', 8), (‘Oscar Ortiz',8),
(‘Alejo Naranjo',
8), ('Yuli Ortiz',8), ('Daniela Naranjo', 8), ('Michael Ortiz',8)
-- Insertamos las
especialidades
insert into especialidad (lugar)values(‘Universidad del tolima’), (‘Universidad Nacional’), (‘Universidad de harvard’), (‘Colorado’)
-- Insertamos las
incapacidades con los numeros de afiliados , codigo de empresa y codigo medico
insert into incapacidad (no_afiliacion,
codigo_medico, fecha_inicial, duracion,
diagnostico, empresa_num_patronal)
values (3,3, ('2018-10-27'), 4, 'Dolor en un brazo', 6), (1, 1, ('2018-10-10'), 5, 'Dolor en un ojo', 4),
(2,3, ('2018-11-1'), 11, 'Gripa y fuerte dolor en la
panza', 5), (3,2, ('2018-11-1'), 6, 'Gripa leve', 6)
1. select medico.nombre_medico, afiliado.nombre from medico inner join incapacidad on
incapacidad.codigo_medico = medico.id_medico
2. select incapacidad.duracion, afiliado.nombre from
incapacidad inner join
afiliado on afiliado.numero_afiliacion
= incapacidad.no_afiliacion
where
incapacidad.duracion>10
3. delect from incapacidad where duracion <5
PUNTO 2:
1. SELECT marca FROM auto WHERE valor BETWEEN 40000000 AND
60000000
2. SELECT * FROM cliente where
num_cedula =4278888 or
num_cedula =5879125 or
num_cedula=3458979
3. select cliente.nom_cliente, auto.marca, alquiler.num_placa from
alquiler inner join
cliente
on cliente.num_cedula = alquiler.num_cedula inner join auto on alquiler.num_placa = auto.num_placa
where marca = 'RENAULT'
4. update auto
set marca ='CORSA' WHERE marca = 'CHEVETTE'
5. delete from
alquiler where fecha_alquiler < ('01-01-2013')
Comentarios
Publicar un comentario