2012-04-14 14 views
22

Estoy usando SQL Developer y quiero dar salida a los contenidos de una variable a la consola usando DBMS_OUTPUT.PUT_LINE(). Estoy ejecutando el siguiente código que agrega los números del 1 al 5 inclusive, pero no veo ningún resultado.Problema rudimentario: ¿salida básica de la consola PL/SQL?

SET SERVEROUTPUT ON; 
DECLARE 
n_counter NUMBER := 5; -- Substitute this variable 
n_sum  NUMBER := 0; 
BEGIN 
    WHILE n_counter != 0 
    LOOP 
    n_sum := n_sum + n_counter; 
    n_counter := n_counter -1; 
    END LOOP; 
    DBMS_OUTPUT.PUT_LINE(n_sum); 
END; 

Además, ¿sabe usted de mejores recursos para solucionar problemas que el increíblemente densa documentación de Oracle PL/SQL? [similar a Java SE7 API?]

+0

¿Llegas al final de esta rutina? Es decir. no es un ciclo sin fin de alguna manera, ¿verdad? No parece ser así. – Marc

+0

Sí, la rutina se completa con éxito. –

Respuesta

44

Dado que está utilizando SQL Developer, tiene un par de opciones.

En SQL Developer, vaya a View | DBMS Output para asegurarse de que la ventana Salida de DBMS esté visible. En la ventana Salida de DBMS, elija el ícono "más" y seleccione la conexión en la que desea escribir los datos en la ventana de Salida DBMS. A continuación, ejecute el bloque PL/SQL en la ventana Hoja de cálculo SQL con la flecha derecha (Ctrl + Intro en Windows). Verá que el resultado aparece en la ventana Salida de DBMS.

Alternativamente, puede colocar el comando SQL * Plus SET SERVEROUTPUT ON y el bloque PL/SQL en la Hoja de cálculo SQL y ejecutarlo como una secuencia de comandos (F5 en Windows). Esto mostrará el resultado inmediatamente debajo del mensaje "bloque anónimo completado" en la ventana Salida del script.

+0

Estoy usando SQL Developer y recibo la siguiente notificación: Bloque anónimo completado. El objetivo es agregar los valores 1-5 inclusive. –

+0

gracias por actualizar mi publicación. –

+0

@TylerJFisher - Actualizado mi respuesta –

Cuestiones relacionadas