问题还是一样。 declare k tblcurrency.currencycode%type; cursor c1 is select currencycode from sy.tblcurrency; begin for rec into c1 loop dbms_output.put_line('f'); end loop; end; 错误如下: for k into c1 loop * ERROR 位于第 7 行: ORA-06550: 第 7 行, 第 9 列: PLS-00103: 出现符号 "INTO"在需要下列之一时: in 符号 "in在 "INTO" 继续之前已插入。
把into 改成 in 就行了 别的不用了
declare k tblcurrency.currencycode%type; cursor c1 is select currencycode from sy.tblcurrency; begin for k in c1 loop dbms_output.put_line('f'); end loop; end;这样就可以了
在游标中into是和fetch连用的。 for k into cl loop 是将k转成了游标变量。(他定义为普通类型!???怎么会变成游标变量的???)
for k into cl loop 是将k转成了游标变量他定义为普通类型!???怎么会变成游标变量的???============== for k into cl loop 这里的k和 k tblcurrency.currencycode%type; 是两个不同的变量, for 循环里的k覆盖了declare中声明的k
在调用k的数据是需要用如下语法: k.currencycode才能返回值.
declare k varchar2(20) cursor c1 is select currencycode from sy.tblcurrency; begin for rec in c1 loop dbms_output.put_line('f'); end loop; end; 提示 cursor c1 is * ERROR 位于第 3 行: ORA-06550: 第 3 行, 第 1 列: PLS-00103: 出现符号 "CURSOR"在需要下列之一时: :=;notnulldefault character
declare
k tblcurrency.currencycode%type;
cursor c1 is
select currencycode
from sy.tblcurrency;
begin
for rec into c1 loop
dbms_output.put_line('f');
end loop;
end;
错误如下:
for k into c1 loop
*
ERROR 位于第 7 行:
ORA-06550: 第 7 行, 第 9 列:
PLS-00103: 出现符号 "INTO"在需要下列之一时:
in
符号 "in在 "INTO" 继续之前已插入。
k tblcurrency.currencycode%type;
cursor c1 is
select currencycode
from sy.tblcurrency;
begin
for k in c1 loop
dbms_output.put_line('f');
end loop;
end;这样就可以了
for k into cl loop 是将k转成了游标变量。(他定义为普通类型!???怎么会变成游标变量的???)
for k into cl loop
这里的k和
k tblcurrency.currencycode%type;
是两个不同的变量,
for 循环里的k覆盖了declare中声明的k
k.currencycode才能返回值.
k varchar2(20)
cursor c1 is
select currencycode
from sy.tblcurrency;
begin
for rec in c1 loop
dbms_output.put_line('f');
end loop;
end;
提示
cursor c1 is
*
ERROR 位于第 3 行:
ORA-06550: 第 3 行, 第 1 列:
PLS-00103: 出现符号 "CURSOR"在需要下列之一时:
:=;notnulldefault
character
k varchar2(20)
改为
k varchar2(20);