Вы находитесь на странице: 1из 19

LABORATORIO 13

USAR LENGUAJE TRANSACCIONAL SOBRE LA BASE DE DATOS

ELABORADO POR:
CEILA KARINA PEALOZA
APRENDIZ

INSTRUCTOR RESPONSABLE:
CESAR MANUEL CASTILLO RODRIGUEZ

SERVICIO NACIONAL DE APRENDIZAJE


SENA
TECNOLOGO EN ANALISIS Y DESARROLLO DE SISTEMAS DE INFORMACIN
PAZ DE ARIPORO
2017
Ejercicios:

1. Construya los siguiente procedimientos Almacenados para insercin de


registros:
En MySQL; para las tablas

Profesor

delimiter $
create procedure insertarprofesor (in nombre varchar(150), in apellido varchar (150), in
categoria varchar (150), in salario int (10))
begin
insert into profesor (nom_prof, ape_prof, cate_prof, sal_prof) values (nombre, apellido,
categoria, salario);
end $
Curso

delimiter $
create procedure insertarcurso (in nombre varchar(150), in horas int (10), in valor int
(10))
begin
insert into profesor (nom_curs, horas_cur, valor_cur) values (nombre, horas, valor);
end $
Estudiante

delimiter $
create procedure insertarestudiante (in documento int (3), in nombre varchar(150), in
apellido varchar (150), in edad int (3))
begin
insert into estudiante (doc_est, nom_est, ape_est, edad_est) values (documento,
nombre, apellido, edad);
end $
Estudiantexcurso.

delimiter $
create procedure insertarestudiantexcurso (in codcur int (11), in docest int(11), in
fecha datetime (6))
begin
insert into estudiantexcurso (cod_cur_estcur, doc_est_estcur, fec_ini_estcur) values
(codcur, docest, fecha);
end $
En ORACLE; para las tablas Cliente

create or remplace procedure INSERTARCLIENTE


(IdeCliente IN CHAR,
NomCliente IN VARCHAR2,
ApeCliente IN VARCHAR2,
DirCliente IN VARCHAR2,
DepCliente IN VARCHAR2,
CumpleCliente IN VARCHAR2)
is
begin
insert into cliente (id_cli, nom_cli, ape_cli, dir_cli, dep_cli, cum_cli)
values (IdeCliente, NomCliente, ApeCliente, DirCliente, DepCliente, CumpleCliente);
end;
/
Articulo

create or remplace procedure INSERTARARTICULO


(IdeArticulo IN CHAR,
TitArticulo IN VARCHAR2,
AutArticulo IN VARCHAR2,
EdiArticuloIN VARCHAR2,
PrecArticulo IN CHAR2)
is
begin
insert into cliente (id_art, tit_art, aut_art, edi_art, pre_art)
values (IdeArticulo, TitArticulo, AutArticulo, EdiArticulo, PrecArticulo);
end;
/
Pedido.

create or remplace procedure INSERTARPEDIDO


(IdePedido IN CHAR
IdeCliPedido IN CHAR,
FechaPedido IN DATE,
ValPedido IN VARCHAR2)
is
begin
insert into pedido (id_ped, id_cliped, fec_ped, val_ped)
values (IdePedido, IdeCliPedido, FechaPedido, ValPedido);
end;
/
En el Motor de su preferencia (ORACLE O MySQL), para las tablas,

Compaa

delimiter $
create procedure insertarcompaia (in nit int(15), in nombre varchar (150), in
aofundacion datetime (6), in representante varchar (45))
begin
insert into compaiacompaia (comnit, comnombre, comaofun, comrelplegal)
values (nit, nombre, aofundacion, representante);
end $
TiposAutomotores

delimiter $
create procedure insertartiposautomotores (in tipo int(10), in apellido varchar (150))
begin
insert into tiposautomotores (auttipo, autnombre) values (tipo, apellido);
end $
Automotores

delimiter $
create procedure insertarautomotores (in placa varchar(6), in marca varchar (150), in
tipo varchar (100), in modelo varchar (100), in NoPasajeros int (3), in cilindraje int(6),
in chasis varchar(100))
begin
insert into tiposautomotores (autoplaca, automarca, autotipo, automodelo,
autonumpasajeros, autocilindraje, autonumchasis) values (placa, marca, tipo, modelo,
NoPasajeros, cilindraje, chasis );
end $
Aseguramientos

delimiter $
create procedure insertaraseguramientos (in codigo int(11), in fechainicio datetime (6),
in fechafin datetime (6), in valorasegurado int (30), in estadoseguro varchar (45), in
costo int(6), in placa varchar(6))
begin
insert into tiposautomotores (asecodigo, asefechainicio, asefechaexpiracion,
asevalorasegurado, aseestado, asecosto, aseplaca) values (codigo, fechainicio,
fechafin, valorasegurado, estadoseguro, costo, placa );
end $
Incidentes.

2. En Oracle construya los procedimientos almacenados para realizar los


siguientes procesos:
Muestre los salarios de los profesores ordenados por categora.
Muestre los cursos cuyo valor sea mayor a $500.000.
Visualizar el nombre, apellido y direccin de todos aquellos clientes que
hayan realizado un pedido el da 25 /02/2012.
Listar todos los pedidos realizados incluyendo el nombre del artculo.
Listar los todos datos de los automotores cuya pliza expira en octubre
de 2013, este reporte debe visualizar la placa, el modelo, la marca,
nmero de pasajeros, cilindraje nombre de automotor, el valor de la
pliza y el valor asegurado.

3. En MySQL construya los procedimientos almacenados para realizar los


siguientes procesos:

Muestre todos los campos de la tabla curso en orden ascendente segn


el valor.

Mostrar los pedidos con los respectivos artculos (cdigo, nombre, valor
y cantidad pedida).
Visualizar los datos de las empresas fundadas entre el ao 1991 y
1998.

Visualizar todos los clientes organizados por apellido.

Visualizar los datos de los incidentes que han tenido un (1) herido, este
reporte debe visualizar la placa del automotor, con los respectivos datos
de la pliza como son fecha de inicio, valor, estado y valor asegurado.
Visualizar los incidentes del vehculo con placas " FLL420", este reporte
debe visualizar la fecha, el lugar, la cantidad de heridos del incidente, la
fecha de inicio la de expiracin de la pliza y el valor asegurado.

4. Realice las Siguientes funciones en MySQL:


Cuente el nmero de estudiantes cuya edad sea mayor a 22.
Muestre el nombre y la edad del estudiante ms joven.

Calcule el valor promedio de los cursos cuyas horas sean mayores a 40.
Obtener el sueldo promedio de los profesores de la categora 1.

Muestre el nombre del profesor con menor sueldo.

5. Realice las Siguientes funciones en ORACLE:


Visualizar el nombre del cliente, la fecha y el valor del pedido ms
costoso.
Visualizar los incidentes con el mnimo nmero de autos involucrados,
de este incidente visualizar el estado de la pliza y el valor asegurado.

Visualizar los datos de la pliza cuyo valor asegurado es el ms


costoso, este reporte adems de visualizar todos los datos de la pliza,
debe presentar todos los datos del vehculo que tiene dicha pliza.

6. Construya los siguiente disparadores para controlar la actualizacin y borrado


de registros
En MySQL; para las tablas Profesor

Construya

Actualizacin
Borrado

Curso

Estudiante.