oracle 数据库中存储过程输出情况

Oracle数据库中if0<Mthendbms_output.put_line('输出SQL语句');elsifM<3thendbms_output.put_line('... Oracle数据库中
if 0<M then
dbms_output.put_line('输出SQL语句');
elsif M<3 then
dbms_output.put_line('输出SQL语句')
else
---- 这里我不想让它输出SQL语句了,怎么写? --
end if ;
在问题那 写入 dbms_output.put_line('');
对吗?
这样写好像判断条件没有执行!
展开
 我来答
freechan10
2019-11-14 · TA获得超过2.9万个赞
知道小有建树答主
回答量:263
采纳率:68%
帮助的人:12.8万
展开全部

1、编写存储过程,

create or replace procedure test_pro(in_num number)

as

  M number;

begin

  M := in_num;

  if 0 < M then

    dbms_output.put_line('输出SQL语句1');

  elsif M < 3 then

    dbms_output.put_line('输出SQL语句2');

  else

    dbms_output.put_line('nothing');

  end if;

end;

2、在command窗口编译,

3、执行存储过程,输入变量,实际什么也不输入,

4、切到DBMS输出窗口,查看输出结果,‘nothing’,也就是说并没有执行‘输出SQL语句’,

badkano
推荐于2017-10-11 · 知道合伙人体育行家
badkano
知道合伙人体育行家
采纳数:144776 获赞数:885369
团长

向TA提问 私信TA
展开全部

可用DBMS_OUTPUT.PUT_LINE()对存储过程的内容进行输出。

如:一个简单的存储过程如下

declare
       cursor c_job
       is
       select empno,ename,job,sal
       from emp
       where job='MANAGER';
       c_row c_job%rowtype;
begin
       for c_row in c_job loop
         dbms_output.put_line(c_row.empno||'-'||c_row.ename||'-'||c_row.job||'-'||c_row.sal);
       end loop;
end;

结果中,红色部分就是存储过程的输出。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
angelgbin
2011-08-02 · TA获得超过112个赞
知道答主
回答量:14
采纳率:0%
帮助的人:23.3万
展开全部
在你注释的地方插入一句话: null;
完整的如下:
if m<0 then
dbms_output.put_line('m<0');
elsif m<3 then
dbms_output.put_line('m<3');
else
null;
end if;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yyyy__123
推荐于2017-09-20 · TA获得超过140个赞
知道小有建树答主
回答量:144
采纳率:0%
帮助的人:54.4万
展开全部
不可以什么都不写的,你可以写成"null”,就是什么都不执行的意思,希望可以解决你的问题
更多追问追答
追问
存储过程生成的是TXT文件,要用sqlplus执行。
dbms_output.put_line(null);会出错!
dbms_output.put_line('null');也不行,那样就会在生成的txt文件中出现 null,文件就运行不了了!
我要的它什么也不输出,但是还要执行!
追答
不是这样写dbms_output.put_line('null');
你应该直接在else后写“null”
如下
if 0<M then
dbms_output.put_line('输出SQL语句');
elsif M<3 then
dbms_output.put_line('输出SQL语句')
else
null;
end if ;
明白?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
egghead008
2011-08-02 · TA获得超过1164个赞
知道小有建树答主
回答量:1424
采纳率:100%
帮助的人:1394万
展开全部
你什么都不写不就可以了吗!
追问
什么不写,那么那个if语句中的条件会执行吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式