如何通过sqlplus在命令行上查看存储过程输出

How to see stored procedure output on command line via sqlplus

CREATE OR REPLACE PROCEDURE TEST_PROC
IS
  str varchar(100);
  rec_count INTEGER;

BEGIN
    str := 'select count(*) from emp_record';
    EXECUTE IMMEDIATE str into rec_count;
    dbms_output.put_line(rec_count);
END;

我可以在 Toad(for oracle) 中看到这个过程的输出,但是当我通过 sqlplus 在命令行中执行它时,我看到以下输出

SQL> exec test_proc;

PL/SQL procedure successfully completed.

问题是如何在命令行上查看计数输出。

您需要在 运行 存储过程之前启用 SQL/PLUS 中的输出:

SET SERVEROUTPUT ON