Estoy usando Oracle Database 11g Express Edition. Cuando ejecuto un archivo en la línea de comandos de SQL, solo recibo un mensaje de procedimiento PL / SQL completado con éxito, pero no obtengo ningún resultado de la consulta almacenada en el archivo first.sql. ¿Cómo puedo obtener mi salida?

Para obtener la salida de un código PL / SQL, debe usar ” configurar la salida del servidor, activando las variables de entorno. Déjame explicarte un poco más para que puedas entenderlo, ver querido cada vez que ejecutas cualquier comando PL / SQL, la salida se almacena en el caché de búfer de la base de datos. Ahora aquí debe prestar atención, usando el comando “establecer salida del servidor en” que está intimidando al Servidor Oracle “hey amigo, dame el valor / cadena que acabas de recibir al ejecutar la consulta”

Explicación con Oracle Server Architecture
Ok déjame explicar con la arquitectura del servidor Oracle

  1. Cada vez que ejecutamos cualquier consulta, la consulta se ejecuta en el Área Global Compartida (SGA) o estrictamente hablando en el Área de la Piscina Compartida en la RAM (Memoria de Acceso Aleatorio)
  2. Entonces, cuando usa dbms_output.put_line (MSZ)
  3. Ahora para el código PL / SQL, la salida se almacena en la caché de búfer de base de datos. Que por defecto no se puede mostrar en la interfaz de línea de comandos (CLI). Ahora, para que la salida se muestre en CLI, deberá hacer que el entorno sea propicio (es decir, favorable para obtener la salida en CLI) y eso es lo que quise decir con “estamos configurando la variable de entorno”.
  4. Y una vez que use “Establecer la salida del servidor en”
    Obtendrás los resultados deseados. Espero tenerlo claro. PD: si quieres escapar de un conocimiento profundo solo usa “set serveroutput on”
    solo por ti tuve que recordar el concepto, gracias!

Hola,

Gracias por A2A.

Necesita escribir declaraciones dbms para ver si sus tareas se han completado. Y antes de ejecutar el archivo sql, active la salida dbms.

Cualquier archivo sql no dará los resultados de las consultas. El archivo SQL está destinado a realizar tareas.

Espero que te sea útil.

-Manish

Lo que ha hecho es escribir un procedimiento PL / SQL, en lugar de una declaración SQL simple. Para obtener salida a la pantalla de un procedimiento PL / SQL, primero debe configurar la salida del servidor. Luego, en su procedimiento, debe llamar a dbms_output.put_line y pasar la información que desea mostrar.
Sin embargo, si solo está interesado en los resultados de una declaración SQL, no es necesario incrustarla en PL / SQL. Por ejemplo, su first.sql podría contener:

Seleccione nombre_tabla
de user_tables
;

La respuesta proporcionada anteriormente por otro encuestado tiene una inexactitud técnica. Los resultados de una instrucción SQL no se almacenan en la caché de búfer de base de datos.

Escriba SET SERVEROUTPUT ON antes de ejecutar su código en la línea de comando SQL.

Use el paquete DBMS_OUTPUT para mostrar mensajes de datos o resultados en su código

More Interesting

Intenté cargar mi Power Bank. Las luces LED no parpadeaban, lo que significa que el Power Bank no se está cargando. ¿Qué pasó con mi Power Bank y cómo voy a solucionarlo?

No puedo evitar rascarme cuando estoy estresado. La mayoría de las veces de manera segura, ocasionalmente termino sangrando. Me temo que perderé el control en algún momento. ¿Que puedo hacer?

Tengo una computadora portátil muy antigua con Windows 7. Quiero comprar un controlador inalámbrico Xbox 360 como reemplazo (bueno, casi) de mi mouse. ¿Qué cosas debo tener en cuenta?

¿Estoy en lo cierto al pensar que la función principal debería ser la función más grande de modo que contenga todas las llamadas a funciones que le permitan al lector leer mi código como si fuera una historia al encapsular los detalles en las funciones?

Me encanta dibujar ¿qué herramientas son mejores para dibujar en una computadora / tableta?

¿Estoy perdiendo el tiempo aprendiendo japonés?

Creo que las personas en Quora a veces no responden preguntas relevantes (las mías a veces) y muchas veces responden las preguntas más irrelevantes en la tierra. ¿Es esto cierto? Si es así, ¿por qué es así?

Soy bastante bueno en la actuación, ¿dónde puedo encontrar una plataforma perfecta para explorar mi talento?

Quiero el iPhone 6S, ¿suspenden la versión de 128 GB inmediatamente después de la fecha de venta, o no podré obtener la versión de 128 más tarde?

Tengo 50 años, perdí mis ahorros y 401K durante la recesión de 2008. Estoy planeando vender una propiedad y puedo tener 100K de ganancias. Tengo mi propia empresa que todavía no genera ganancias. ¿Cuáles son algunas recomendaciones para un diseño para nuestra economía familiar en los años venideros?