我是pl / sql的新手,并尝试使用以下代码打印直到100的数字:
Declare
i number;
sum number:=0;
x number:=2;
n number;
Begin
for i in 1..100 loop
if (i%x=0) then
n:=i;
sum:=sum+n;
end if;
end loop;
dbms_output.put_line(sum);
end;
我收到此错误
ERROR at line 10:
ORA-06550: line 10, column 12:
PLS-00103: Encountered the symbol "+" when expecting one of the following:
(
ORA-06550: line 13, column 26:
PLS-00103: Encountered the symbol ")" when expecting one of the following:
(
帮助? :(
PL / SQL中没有%运算符;使用mod(i,x)函数代替。无论如何,你不需要n变量。 sum:= sum +我会做的。 sum可能是一个保留字,用s代替。 \
现在:
Declare
i number;
sum number:=0;
Begin
for i in 1..100 loop
if (mod(i,2)=0) then
sum:=sum+i;
end if;
end loop;
dbms_output.put_line(sum);
end;
同样的问题:(
答案 0 :(得分:5)
PL / SQL中没有%运算符;请改用mod(i,x)
函数。无论如何,你不需要n变量。 sum:=sum+i
会这样做。但是:sum
是PL / SQL keyword,而是使用s。
答案 1 :(得分:0)
Declare
i number;
sum1 number:=0;
x number:=2;
n number;
Begin
for i in 1..100 loop
if(i mod x =0)then
n:=i;
sum1:=sum1+n;
end if;
end loop;
dbms_output.put_line(sum1);
end;
/
“sum”是聚合函数之一,因此我们不能将其用作变量名。