问题描述
SQL> set serveroutput onSQL> declare 2 sum number:=0; 3 begin 4 for i in 1..10 loop 5 sum := sum+i; 6 end loop; 7 dbms_output.put_line('和是'|| sum); 8 end; 9 /sum := sum+i; *第 5 行出现错误:ORA-06550: 第 5 行, 第 11 列:PLS-00103: 出现符号 "+"在需要下列之一时:(ORA-06550: 第 7 行, 第 34 列:PLS-00103: 出现符号 ")"在需要下列之一时:(请问错误原因,谢谢各位! 问题补充:liuqing_2010_07 写道
解决方案
set serveroutput ondeclaresum1 number:=0;beginfor i in 1..10 loopsum1 := sum1+i;end loop;dbms_output.put_line('和是'|| sum1);end;/把sum改为sum1 既可以了。'sum' is a reserved word of Oracle.
解决方案二:
你不能用保留字做你的变量呀。
解决方案三:
结果:SQL> set serveroutput onSQL> declare 2 sum1 number:=0; 3 begin 4 for i in 1..10 loop 5 sum1 := sum1+i; 6 end loop; 7 dbms_output.put_line('和是'|| sum1); 8 end; 9 /和是55PL/SQL 过程已成功完成。