Ver Mensaje Individual
  #7 (permalink)  
Antiguo 11/01/2008, 17:02
Avatar de matanga
matanga
 
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 17 años
Puntos: 85
Re: Procedimiento Almacenado

Hola,

De todo lo que preguntas solo puedo responder a poco :(

Código:
SQL>
  1  create or replace procedure p1
  2  (id number, name varchar2)
  3  as
  4  begin
  5  dbms_output.put_line('id='|| to_char(id) ||' name='||name);
  6* end;
SQL> /

Procedure created.

SQL> begin
  2  p1(id=>1,name=>'name 1');
  3  end;
  4  /
id=1 name=name 1

PL/SQL procedure successfully completed.

SQL> begin
  2  p1(name=>'name1',id=>10);
  3  end;
  4  /
id=10 name=name1

PL/SQL procedure successfully completed.
Los parametros de entrada/salida en un procedimiento o funcion pueden ser interpretados en forma posicional o por nombre, si quieres que en la llamada los parametros sean por nombre lo tienes que indicar con el formato NOMBRE_PARAMETRO=>VALOR.

Tambien tiene otro uso, pero no funcional, sino visual, para orientarnos mejor al momento de leer la llamada a un procedimiento, imagina que tienes 10 parametros de entrada/salida, expresandolo como NOMBRE_PARAMETRO=>VALOR es mas ordenado y nos da una mejor interpretacion cuando leemos el codigo.

Por lo demas, se de hecho que el TOAD puede mostrar el contenido del sys_refcursor, pero hace mucho que no lo utilizo y no recuerdo como se hace, pero conociendo a la gente de QUEST, lo mas probable es que tengas que hacer algo asi como:

1. Boton derecho sobre el nombre del procedimiento.
2. En el menu desplegable, tavlez exista una opcion de Ejecutar o Probar.
3. Aparecera algun tipo de asistente que te guia sobre como completar los valores de los parametros.
4. Al finalizar probablemente te muestre una grilla con los valores del sys_refcursor.

Saludos