问题如下,我在用FOR循环时出现下面情况,在(1)情况结果就是v_add_rate为5.5,可在2情况下为什么还0呢,按说v_chg_rate也是固定值呀,为什么他就不循环加呢?(1):
CREATE OR REPLACE Procedure p_tmep Is
v_chg_rate float := 0.1;
i int := 5;
v_add_rate float := 0;Begin
For t In 1..i Loop
v_add_rate := v_add_rate + 0.1;
End Loop;
dbms_output.put_line(v_add_rate);
End p_tmep;(2):
CREATE OR REPLACE Procedure p_tmep Is
v_chg_rate float := 0.1;
i int := 5;
v_add_rate float := 0;Begin
For t In 1..i Loop
v_add_rate := v_add_rate + v_chg_rate;
End Loop;
dbms_output.put_line(v_add_rate);
End p_tmep;
CREATE OR REPLACE Procedure p_tmep Is
v_chg_rate float := 0.1;
i int := 5;
v_add_rate float := 0;Begin
For t In 1..i Loop
v_add_rate := v_add_rate + 0.1;
End Loop;
dbms_output.put_line(v_add_rate);
End p_tmep;(2):
CREATE OR REPLACE Procedure p_tmep Is
v_chg_rate float := 0.1;
i int := 5;
v_add_rate float := 0;Begin
For t In 1..i Loop
v_add_rate := v_add_rate + v_chg_rate;
End Loop;
dbms_output.put_line(v_add_rate);
End p_tmep;
看一下,此时v_chg_rate的值是不是0.1
我想这样就可以找到答案了。