EjemplosDuoc.es.tl
  Procedimientos Oracle
 
 

create or replace PROCEDURE in_param
(rut number,dv char,nombre varchar2,paterno varchar2,materno varchar2 )
IS
--variables
  err_num number;
  err_msg varchar2(255);
  campos varchar2(255);
BEGIN
/*Insercion de datos*/
  insert into acliente values (rut,dv,nombre,paterno,materno);
  dbms_output.put_line('Los datos fueron ingresados correctamente');
/*Muestra de datos*/
  select cli_rut ||'-'|| cli_dv ||' NOMBRE: '|| cli_nombres ||' APELLIDO: '||
          cli_paterno ||' '|| cli_materno ||'.'
  into campos from acliente where cli_rut = rut;
  dbms_output.put_line('RUT: ' || campos);
/*Modificacion de datos*/
  --modicando datos
  update acliente
  set cli_nombres = paterno || materno
  where cli_rut = rut;
  --mostrando los datos modificados
  select cli_rut ||'-'|| cli_dv ||' NOMBRE: '|| cli_nombres ||' APELLIDO: '||
          cli_paterno ||' '|| cli_materno ||'.'
  into campos from acliente where cli_rut = rut;
  dbms_output.put_line('RUT: ' || campos);
/*Eliminacion de campos*/
  --se muestra todos los datos
  delete from acliente
  where cli_rut = rut;
  dbms_output.put_line('Datos ingresados ELIMINADOS');
 

exception
  when DUP_VAL_ON_INDEX then
    dbms_output.put_line('Ha tratado de ingresar una clave duplicada');
  when others then
    err_num := sqlcode;
    err_msg := sqlerrm;
    dbms_output.put_line('Error: ' || to_char(err_num));
    dbms_output.put_line(err_msg);
 END in_param;

--Para llamar este proc solo se escribe:
DECLARE
BEGIN
in_param(12345678,'k','nom','pat','mat'); -- se envian parametros
END;
/
 
   
 
Este sitio web fue creado de forma gratuita con PaginaWebGratis.es. ¿Quieres también tu sitio web propio?
Registrarse gratis