sábado, 16 de junio de 2012

Procedimiento verCliente

create table CLIENTE (
NUMCLIENTE CHAR(4) not null,
NOMBRE CHAR(30),
APELLIDO CHAR(30),
DIRECCION CHAR(35),
TELEFONO CHAR(10),
TIPOPREF CHAR(25),
MAXRENT FLOAT,
constraint PK_CLIENTE primary key (NUMCLIENTE)
);
  begin
insert into cliente values('CR76','Jhon','Kay','56 High ST,Londonn,SW14EH','0207774563','Departamento',450);
insert into cliente values('CR56','Aline','Stewart','64 Fern Dr, Glasgow G42 OBL','0141324182','Departamento',350);
insert into cliente values('CR74','Mike','Ritchie','63 Well St, Glasgow,G42','0141943742','Casa',750);
insert into cliente values('CR62','Mary','Tregear','12 Park PI, Glasgow, G40QR','0141225742','Departamento',600);
insert into cliente values('CR78','Juan','Kayser','55 High ST,Londonn,SW14EH','0207774564','Departamento',450);
insert into cliente values('CR57','Alicia','Soto','63 Fern Dr,. GlasgowG42 OBL','0141324183','Departamento',350);
insert into cliente values('CR72','Miguel','Torres','62 Well St, Glasgow,G42','0141943740','Casa',750);
insert into cliente values('CR63','Maria','Perez','13 Park PI, Glasgow,G4 0QR','0141225741','Departamento',600);
  end;
set serveroutput on
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 hemos encontrado al Cliente' || pNumCliente);
  end;  
   
    --Para invocar un procedimiento basta nombrarlo indicando los parametros requeridos
    SET SERVEROUTPUT ON
    begin
       verCliente('CR78');
     end;
    
     show errors;

No hay comentarios:

Publicar un comentario