set serveroutput on
Create Table Cliente( --Creacion de la tabla cliente
NumCliente varchar2(4) not null,
Nombre varchar2(30) ,
Apellido varchar2(30),
Direccion varchar2(35),
Telefono varchar2(15) ,
TipoPref varchar2(25) ,
MaxRent Float,
Constraint PK_CLIENTE PRIMARY KEY (NumCliente)
);
--Ahora insertamos registros
begin
insert into cliente values('CR78' , 'Juan' , 'Kayser', 'Alameda Numero 23' , '9898765' , 'Dpto' , '100000');
insert into cliente values('CR79' , 'Miguel' , 'Sepulveda', 'Mar de Drake N°69' , '69696969' , 'Casa' , '1000000');
insert into cliente values('CR80' , 'Gerald Mauricio' , 'Caris', 'Bellavista N° 23' , '98765432' , 'Dpto' , '900000');
insert into cliente values('CR81' , 'Enrique' , 'Mimó', 'San Ramon N°314' , '99999999' , 'Parcela' , '1000000');
END;
select *from Cliente; --Con este select se ve los ingresos a la Tabla Cliente
---Procedimiento Ver Cliente
Create or Replace Procedure verCliente (pNumCliente varchar2)IS
vNumCliente Cliente.numCliente%TYPE;
vNombre Cliente.nombre%TYPE;
vApellido Cliente.apellido%TYPE;
BEGIN
select numCliente, nombre, apellido
into vNumCliente, vNombre, vApellido
from Cliente
where numCliente=pNumCliente;
DBMS_OUTPUt.PUT_LINE('NumCliente : ' ||vNumCliente || ' Nombre : ' ||trim(vNombre) || ' Apellido : ' ||vApellido);
Exception
When no_data_found then
DBMS_OUTPUT.PUT_LINE( ' NO SE ENCUENTRA EL CLIENTE ' || pNumCliente );
END;
----EL PROCEDIMIENTO verCliente me compilo, pero me arroja un Warning....
show errors;
--Para invocar a un procedimiento:
begin
verCliente('CR79');
END;
show errors;
jueves, 14 de junio de 2012
lunes, 4 de junio de 2012
Clase 02 de Junio Script Trigger Compra
create table Compra (
idCompra integer,
fecha date
);
alter table Compra
modify idCompra integer not null;
alter table Compra
add constraint PK_Compra primary key (idcompra);
Create table DetalleCompra(
idCompra integer,
idProducto integer,
cantidad integer
);
alter table DetalleCompra
add constraint fk_Detalle_Compra foreign key (idCompra)
referencing Compra (idcompra);
alter table DetalleCompra
add constraint fk_Detalle_Producto foreign key (idProducto)
referencing Producto (idProducto);
Create table Producto(
idProducto integer,
nombreProducto varchar2(30),
stockActual integer
);
alter table producto
add constraint pk_Producto primary key (idProducto);
create sequence sqCompra;
insert into compra values (sqCompra.nextval, sysdate);
insert into compra values (sqCompra.nextval, sysdate);
insert into compra values (sqCompra.nextval, sysdate);
select * from compra;
create sequence sqProducto
START WITH 10
INCREMENT BY 10;
insert into Producto values (sqProducto.nextval, 'Pantalla Led 60 "', 100);
insert into Producto values (sqProducto.nextval, 'HD 6TB', 1000);
insert into Producto values (sqProducto.nextval, 'Radio Sony xTr', 10);
insert into Producto values (sqProducto.nextval, 'Moto Kawasaky', 20);
select * from Producto
select * from Compra
insert into detalleCompra values (1, 10, 2);
insert into detalleCompra values (1, 40, 1);
insert into detalleCompra values (1, 50, 5);
idCompra integer,
fecha date
);
alter table Compra
modify idCompra integer not null;
alter table Compra
add constraint PK_Compra primary key (idcompra);
Create table DetalleCompra(
idCompra integer,
idProducto integer,
cantidad integer
);
alter table DetalleCompra
add constraint fk_Detalle_Compra foreign key (idCompra)
referencing Compra (idcompra);
alter table DetalleCompra
add constraint fk_Detalle_Producto foreign key (idProducto)
referencing Producto (idProducto);
Create table Producto(
idProducto integer,
nombreProducto varchar2(30),
stockActual integer
);
alter table producto
add constraint pk_Producto primary key (idProducto);
create sequence sqCompra;
insert into compra values (sqCompra.nextval, sysdate);
insert into compra values (sqCompra.nextval, sysdate);
insert into compra values (sqCompra.nextval, sysdate);
select * from compra;
create sequence sqProducto
START WITH 10
INCREMENT BY 10;
insert into Producto values (sqProducto.nextval, 'Pantalla Led 60 "', 100);
insert into Producto values (sqProducto.nextval, 'HD 6TB', 1000);
insert into Producto values (sqProducto.nextval, 'Radio Sony xTr', 10);
insert into Producto values (sqProducto.nextval, 'Moto Kawasaky', 20);
select * from Producto
select * from Compra
insert into detalleCompra values (1, 10, 2);
insert into detalleCompra values (1, 40, 1);
insert into detalleCompra values (1, 50, 5);
Clase 02 de Junio Trigger
-- trigger 1er ejercicio diapo trigger
create or replace trigger tr_ActualizaStock
after insert on DetalleCompra
for each row
begin
update Producto
set stockActual = stockActual + :new.Cantidad
where idProducto = :new.idProducto
end trActualizaStock;
create or replace trigger tr_ActualizaStock
after insert on DetalleCompra
for each row
begin
update Producto
set stockActual = stockActual + :new.Cantidad
where idProducto = :new.idProducto
end trActualizaStock;
Suscribirse a:
Entradas (Atom)