我刚刚进入 PL/SQL,我尝试运行以下代码,并且我正在完成匿名块,但我认为我应该得到测试输出。有谁知道我做错了什么?
DECLARE
message varchar2(20) := 'Testing output';
BEGIN
dbms_output.put_line(message);
END;
/
查看 DBMS_OUTPUT 取决于程序。
SQL*Plus 和 Oracle SQL Developer
先跑SET SERVEROUTPUT ON;
。这就是 SQL*Plus 或最新版本的 Oracle SQL Developer 所必需的。
SET SERVEROUTPUT ON;
begin
dbms_output.put_line('Testing output');
end;
/
PL/SQL 开发人员
输出会自动检测并显示在“输出”选项卡中。
是的,在 Oracle SQL Developer 中放置以下语句:
SET SERVEROUTPUT ON;
就在您的DECLARE
关键字之前,这应该可以。
我找不到View -> DBMS Output
,我使用的是 1.5.5 版。
是的。有办法在 SQL Developer 中查看输出。
单击 ->查看->Dbms 输出,然后单击 Dbms 输出窗口上的 + 符号。现在您可以运行该过程并可以看到输出。
`下面的语句将给出可能的解决方案试试这个
SET SERVEROUTPUT ON;
然后运行这段代码会得到如下输出
declare
a integer :=10;
b integer :=20;
c integer;
f real;
begin
c := a+b;
dbms_output.put_line('value of c: ' || c);
f := 70.0/3.0;
dbms_output.put_line('value of f: ' || f);
结尾; /
代码将给出以下输出
c 的值:30 f 的值:23.3333333333333333333333333333333333333
PL/SQL 过程成功完成。
是的,这是正确的。您需要在此块之前使用:
SET SERVEROUTPUT ON
然后,消息会显示在窗口上。
否则我们可以检查 SQL Developer select "View" -> "DBMS Output"
。
在标签PLSQL developer
下,我们可以查看消息。OutPut
**SET SERVEROUTPUT ON;**
DECLARE
a INTEGER :=10;
b INTEGER :=20;
c float ;
d real ;
BEGIN
c :=a+b;
dbms_output.put_line('the value of C is :'|| c);
d := 70.0/3.3;
dbms_output.put_line('the value of d is:'|| d);
END;
这将为您提供输出
the value of C is: 30
the value of d is: 21.21212121212121212121212121212121212121
如果您在执行过程时通过键入“EXECUTE ;”得到“匿名块完成” 然后运行以下命令并再次执行该过程。命令是
设置服务器输出;