DECLARE
i number:=1;
sum number:=0;
BEGIN
WHILE (i<100) LOOP
i:=i+1;
sum := sum+i;
END LOOP;
DBMS_OUTPUT.PUT_LINE('sum='||sum);
END;一个很简单的程序从1加到100,但是运行的时候总是报错
:
sum := sum+i;
          *
第 7 行出现错误: 
ORA-06550: 第 7 行, 第 11 列: 
PLS-00103: 出现符号 "+"在需要下列之一时: 
(
ORA-06550: 第 9 行, 第 33 列: 
PLS-00103: 出现符号 ")"在需要下列之一时: 
( 实在是搞不懂,还请高手指出

解决方案 »

  1.   

    这样实现最简单
    select sum(rownum) total
    from 
    (select rownum from all_objects where rownum<100)
      

  2.   


    declare
      i   number := 1;
      "sum" number := 0;
    begin
      while i < 100 loop
        i   := i + 1;
        "sum" := "sum" + i;
      end loop;
      dbms_output.put_line('sum=' ||"sum");
    end;
    /sum是函数名,要用作变量的话需要加双引号。