Trabajo Grupal – Practica de uso SQL Developer
1) De acuerdo al enunciado presentado a mas adelante, realice lassiguientes actividades:
a) Diagrama de Entidad – Relación, describiendo Entidades, Relaciones, y Atributos, (Modelo conceptual)
b) Modelo Relacional, incorporando los atributos necesarios
c) Generar el script (DDL)
d) Insertar al menos 5 registros en cada entidad
e) Proponer al menos 3 consultas SQL, con su respectivas soluciones
f) Guardar el Proyecto
Debe publicar en el blog de su grupo casa paso relizado, anexando pantallas correspondientes.
Caso: Proyectos desarrollados por una compañía.
1. La base de datos de una COMPAÑIA se ocupa de los empleados, departamentos y proyectos de una empresa, de acuerdo con los siguientes requisitos:
2. La compañía está organizada en departamentos. Cada departamento tiene un nombre único, un número único y un empleado que la dirige y se está interesado en guardar la fecha en que dicho empleado comenzó a dirigir el departamento.
3. Un departamento puede estar distribuido en varios lugares.
4. Cada departamento controla un cierto número de proyectos, cada uno de los cuales tiene un nombre y un número únicos, y se realiza en un sólo lugar.
5. Se almacena el nombre, número de la Seguridad Social, dirección, sueldo,sexo y fecha de nacimiento de cada empleado.
6. Todo empleado está asignado a un departamento, pero puede trabajar en varios proyectos que no tienen porque ser del mismo departamento.
7. Interesa saber el número de horas que un empleado trabaja en cada proyecto a los que está asignado.
8. También se quiere guardar la relación de las cargas familiares de cada empleado para administrar el seguro que poseen. Se almacena el nombre, sexo y fecha de nacimiento de cada una de las cargas familiares y su parentesco con el empleado.
9. Se debe controlar el pago a los empleados que puede ser solo de dos formas al contado con un cheque o depósitos en una cuenta corriente. A cada empleado se le cancela de una sola forma y no de ambas.
Modelo Entidad - Relación
Modelo Relacional
Script
Consultas
Todos los pagados con cheque
select empleado.nombre, empleado.sueldo, cheque.numero, departamento.nombre as departamento, cheque.banco, cheque.fecha_pago
from empleado, cheque , departamento
where cheque.empleado_id_empleado= empleado.id_empleado
and empleado.id_departamento = departamento.id_departamento
El sueldo mas alto
select empleado.nombre, departamento.nombre, empleado.sueldo as "sueldo maximo" from empleado, departamento
where sueldo=(select max(sueldo) from empleado)
and empleado.id_departamento = departamento.id_departamento
Cantidad de proyectos en que trabaja cada empleado
select empleado.nombre,count( mantiene.empleado_id_empleado) as cant_proyectos_trabaja
from proyecto,empleado,mantiene
where empleado.id_empleado = mantiene.empleado_id_empleado
and proyecto.id_proyecto = mantiene.proyecto_id_proyecto
group by empleado.nombre
Empleado mayor
select empleado.nombre, departamento.nombre, empleado.fecha_nacimiento from empleado, departamento
where fecha_nacimiento=(select min(fecha_nacimiento) from empleado)
and empleado.id_departamento = departamento.id_departamento


No hay comentarios.:
Publicar un comentario