orcale

SQL> set serveroutput on
SQL> 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: 出现符号 ")"在需要下列之一时:
(
请问错误原因,谢谢各位!

[code="java"]
set serveroutput on
declare
sum1 number:=0;
begin
for i in 1..10 loop
sum1 := sum1+i;
end loop;
dbms_output.put_line('和是'|| sum1);
end;
/
[/code]

把sum改为sum1 既可以了。

[code="java"]'sum' is a reserved word of Oracle.[/code]

结果:
[code="java"]SQL> set serveroutput on
SQL> 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 /
和是55

PL/SQL 过程已成功完成。[/code]

你不能用保留字做你的变量呀。