日期:2014-05-17  浏览次数:20997 次

存储过程中怎么添加“set serveroutput on”啊???
在创建存储过程的时候,我本想在存储过程添加一些提示语句,例如提示用户输入什么啊,举例如下:
SQL code

create or replace procedure pro_temp is
begin
  [color=#0000FF]set serveroutput on;[/color]  
  dbms_output.put_line('请用户输入:……');
end pro_temp;


编译的时候,出现下面的错误:

PROCEDURE QIUYUE.PRO_TEMP 编译错误
错误:PL/SQL: ORA-00922: 选项缺失或无效
行:3
文本:set serveroutput on;

错误:PL/SQL: SQL Statement ignored
行:3
文本:set serveroutput on;

之所以想通过“set serveroutput on”打开服务器输出,是为了避免忘记在命令行窗口打开,所以才想在存储过程中添加,不知道怎么弄,求教,谢谢!
不知道这个问题有没有用,谢谢!


------解决方案--------------------
不可以这样做的,set serveroutput on命令是不可以放在存储过程中执行的


------解决方案--------------------
这是 sqlplus 命令,不可以放在存储过程中。
------解决方案--------------------

如果你怕忘记打开或者嫌麻烦,可以把 set serveroutput on 写在
D:\oracle\product\10.2.0\db_1\sqlplus\admin\glogin.sql 中,因为sqlplus打开的时候会自动加载这个文件。


探讨

set serveroutput on;

create or replace procedure pro_temp is
begin
dbms_output.put_line('请用户输入:……');
end pro_temp;