这是我为Oracle PL / SQL Armstrong Number编写的代码
declare
num number;
sum number;
temp number;
val number;
begin
num:=#
temp:=num;
while temp<>0 loop
val:=trunc(temp mod 10);
sum:=sum +(val*val*val);
temp:=temp/10;
end loop;
if sum=num then
dbms_output.put_line('number is Armstrong');
else
dbms_output.put_line('number is not Armstrong');
end if;
end;
我收到以下错误:
第11行的错误:ORA-06550:第11行,第10栏:PLS-00103: 遇到符号&#34; +&#34;期待下列之一时:( 符号&#34;(&#34;代替&#34; +&#34;继续.ORA-06550:第11行, 第24栏:PLS-00103:遇到符号&#34 ;;&#34;当期待其中一个 以下内容:)*&amp; - + / at mod余数rem || 年份符号&#34;)&#34;取代了#34;;&#34;接着说。 ORA-06550:第14行第7列:PLS-00103:遇到符号&#34; =&#34; 期待以下之一时:(
我做错了什么? 感谢。
答案 0 :(得分:5)
sum
是大多数数据库(包括Oracle)中的保留字。这是一个聚合函数,这就是Oracle告诉你它期望左括号的原因。更改该变量的名称,该块将起作用。