oracle警告:创建的存储过程带有编译错误

createorreplaceprocedureTest_One(innuminvarchar2)ISresultinteger:=0;numinteger:=0;exc... create or replace procedure Test_One(innum in varchar2)
IS
result integer:=0;
num integer:=0;
exception1 EXCEPTION;
pragma exception_init(exeception1,-6505);
begin
num:=to_number(innum);
if num<0 then
for n in num..-1
loop
result:=result+n;
end loop;
elseif num>0 then
for n in 1..num
loop
result:=result+n;
end loop;
else
return;
end if;
end if;
dbms_output.put_line(result);
EXCEPTION
WHEN exception1
then
dbms_output.put_line('请输入数字!');
end;
/
展开
 我来答
xinjie_208
2012-03-28 · 超过26用户采纳过TA的回答
知道答主
回答量:53
采纳率:100%
帮助的人:59.7万
展开全部
第一个exeception1写错了;
第二个,oracle没有else if只有elsif;
第三个:多了一个end if;
最后一个,输出的时候后面的";"应该改为英文分号
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
牛角山麦子
2012-03-28 · TA获得超过1554个赞
知道小有建树答主
回答量:651
采纳率:75%
帮助的人:543万
展开全部
在sqlplus 下运行完这个语句,提示编译错误之后,输入
SQL>show errors
把结果贴上来
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
x403879785
2012-03-28 · TA获得超过3839个赞
知道大有可为答主
回答量:1299
采纳率:100%
帮助的人:1180万
展开全部
exception1 EXCEPTION;
pragma exception_init(exeception1,-6505);
括号里面的和外面定义的不一样

elseif num>0 then
for n in 1..num
loop
这句也有问题

dbms_output.put_line('请输入数字!');
后面的;改为;

/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wanghao_kjlink
2012-03-28 · TA获得超过607个赞
知道小有建树答主
回答量:561
采纳率:100%
帮助的人:273万
展开全部
能不能把错误也贴出来啊
追问
就是提示编译错误
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式