Tarea Final

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 7

TRABAJO DEL CURSO – BASE Y

ESTRUCTURA DE DATOS III

Nombre y apellidos: Romario Quispe Hancco


Instructor: Cesar Rosas Aragón
Semestre: 4to Semestre
Especialidad: Ingeniería de Software con IA
Fecha: 28/11/2021
CREACION DE LA BASE DE DATOS Y SUS TABLAS RESPECTIVAS
CREATE SCHEMA `buena_salud` ;

USE buena_salud;

CREATE TABLE departamento(Dept_No INT NOT NULL AUTO_INCREMENT,

Dnombre VARCHAR(30) NOT NULL,

Loc VARCHAR(30) NOT NULL,

PRIMARY KEY (Dept_No));

CREATE TABLE Empleado(Emp_No INT NOT NULL AUTO_INCREMENT,

Apellido VARCHAR(30),

Oficio VARCHAR(30),

Direccion VARCHAR(65),

Fecha_Alt DATE,

Salario INT NOT NULL,

Comision VARCHAR(3) NULL,

Edad Int,

PRIMARY KEY (Emp_No),

Dept_No INT NOT NULL,

FOREIGN KEY (Dept_No) REFERENCES departamento(Dept_No));

CREATE TABLE enfermo(

Inscripcion VARCHAR(30),

Apellido VARCHAR(45) NOT NULL,

Direccion VARCHAR(45) NOT NULL,

Fecha_Nac DATE NOT NULL,

Sexo VARCHAR(45) NOT NULL,

NSS VARCHAR(45) NOT NULL);


SCRIPTS DE LA INSERCION DE DATOS EN LAS TABLAS
INGRESO DE DATOS DE TABLA ENFERMO:

INSERT INTO enfermo (Inscripcion, Apellido, Direccion, Fecha_Nac, Sexo, NSS) VALUES

('semanal', 'Quispe Hancco', 'Villa Ecologica', '2003-04-20', 'M', 'etc'),

('quincenal', 'Rodriguez Suarez', 'Independencia', '2003-05-20', 'M', 'etc'),

('mensual', 'Suarez Vega', 'Las torres', '2002-07-20', 'F', 'etc'),

('semanal', 'Choque Flores', 'Miguel Grau', '2002-08-20', 'M', 'etc'),

('semanal', 'Gonzales Cruz', 'Los Rosales 406', '2001-07-20', 'M', 'etc'),

('quincenal', 'Carbajal mamani', 'Ventanilla', '2005-09-20', 'F', 'etc'),

('semanal', 'Rios Soto', 'Texas 305', '2008-11-20', 'F', 'etc'),

('mensual', 'Ramirez Arias', 'Santa Catalina', '2000-11-20', 'M', 'etc'),

('semanal', 'Copa Hancco', 'Villa Ecologica', '2003-02-20', 'F', 'etc'),

('mensual', 'Flores ramos', 'Miraflores', '2003-12-20', 'M', 'etc');

INSERCION DE DATOS EN LA TABLA DEPARTAMENTO

INSERT INTO departamento (Dept_No, Dnombre, Loc) VALUES

('023', 'Pacientes1', '1er piso'),

('032', 'Pacientes2', '2do piso'),

('012', 'Pacientes3', '3er piso'),

('031', 'Pacientes4', '4to piso'),

('043', 'Pacientes5', '5to piso');


INGRESO DE DATOS EN EMPLEADOS

INSERT INTO empleado(Emp_No, Apellido, Oficio, Direccion, Fecha_Alt, Salario, Comision,


Edad, Dept_No) VALUES

('1', 'Quispe', 'Fisioterapeuta', 'Yanahuara', '2017-04-23', '200', '10%', '28', '23'),

('2', 'Flores', 'Cirujano', 'Cayma', '2017-09-21', '250', '6%', '21', '23'),

('3', 'Chambi', 'Odontologo', 'San luis', '2018-04-23', '220', '10%', '28', '12'),

('4', 'Surco', 'enfermero', 'Los olivos', '2017-02-23', '210', '11%', '27', '23'),

('5', 'Hancco', 'Psicologo', 'Miraflores', '2018-01-23', '230', '12%', '26', '12'),

('6', 'Rodriguez', 'Cardiologo', 'Ramon castilla', '2017-03-23', '300', '14%', '21', '12'),

('7', 'Carbajal', 'Cirujano', 'Santa catalina', '2018-05-23', '100', '13%', '22', '23'),

('8', 'Mamani', 'Neurocirujano', 'Sabandia', '2017-06-23', '110', '6%', '24', '32'),

('9', 'Ramos', 'Ginecologa', 'Pedregal', '2017-07-23', '120', '4%', '29', '23'),

('10', 'Vargas', 'Oftalmologo', 'Cerro colorado', '2017-08-23', '260', '19%', '30', '32'),

('11', 'Gallardo', 'Obstetricia', 'Independencia', '2019-09-23', '280', '21%', '21', '32'),

('12', 'Ccora', 'Psicologo', 'Yura', '2017-10-23', '270', '22%', '38', '23'),

('13', 'Candia', 'Odontologo', 'Majes', '2017-11-23', '290', '32%', '48', '32'),

('14', 'Huaman', 'Cirujano', 'Las torres', '2018-12-23', '310', '09%', '18', '23'),

('15', 'Mita', 'Cardiologo', 'Miami', '2018-09-23', '320', '10%', '32', '32'),

('16', 'Tinta', 'Dermatologo', 'Los Angeles', '2017-08-23', '330', '11%', '43', '23'),

('17', 'Pinto', 'Neurocirujano', 'Texas', '2017-07-23', '340', '12%', '45', '12'),

('18', 'Vega', 'Fisioterapeuta', 'Andorra', '2018-06-23', '450', '50%', '28', '12'),

('19', 'Caceres', 'Fisioterapeuta', 'Madrid', '2017-02-23', '580', '30%', '28', '12');


CREACION Y EJECUCION DE LOS PROCEDIMIENTOS ALMACENADOS:

1.Obtener todos los empleados que se dieron de alta antes del año 2018 y
que pertenecen a un determinado departamento.

delimiter //

create procedure FECHASDEPT(in N_dept int)

begin

select * from empleado

where Fecha_Alt < '2018/01/01' and Dept_No = N_Dept;

end//

delimiter ;

call FECHASDEPT ('32');

2.Crear un procedimiento almacenado que permita insertar un nuevo


departamento.

delimiter //

create procedure INSERT_DEP(in Dept_NO INT, in Dnombre varchar(30), in Loc varchar(30))

begin

INSERT INTO departamento VALUES(

Dept_No, Dnombre, Loc);

end//

delimiter ;

call INSERT_DEP('10','Administracion','Buenos aires');


3.Crear un procedimiento que recupere el promedio de edad de las
persona por cada departamento.

delimiter //

create procedure PROMEDIO_DEPT(in N_Dep int)

begin

select round(avg(Edad),0) from empleado

where Dept_No = N_Dep;

end//

delimiter ;

call PROMEDIO_DEPT('32');

4.Crear un procedimiento para devolver el apellido, oficio y salario, pasándole como


parámetro el número del empleado.

delimiter //

create procedure NUMEMP_DEPT(in Num_emp int)

begin

select apellido, oficio, salario from empleado

where Emp_No = Num_emp;

end//

delimiter ;

call NUMEMP_DEPT('5');
5.Crear un procedimiento almacenado para dar de baja a un empleado
pasándole como parámetro su apellido.

delimiter //

create procedure DBAJA_EMPLEADO(in A_pellido varchar(30))

begin

delete from empleado where Apellido = A_pellido;

end//

delimiter ;

call DBAJA_EMPLEADO('Flores');

También podría gustarte