日期:2014-05-17  浏览次数:20753 次

写了一个很简单的循环loop,但是一直报错,求大神解释啊
SQL> create or replace procedure proc7(v_name varchar2,v_n number) is
  2 v_no number:=1;
  3 begin
  4 loop
  5 insert into users values(v_name,v_no);
  6 exit when v_no=v_n;
  7 v_no:=v_no+1;
  8 end loop;
  9 end;
 10 /
 
Procedure created
 
SQL> exec proc7('ggg',3);

错误:ORA-01722: 无效数字
ORA-06512: 在 "SYSTEM.PROC7", line 5
ORA-06512: 在 line 2


------解决方案--------------------
USERS表结构是什么样的?
改成如下看看:
insert into users(name,no) values(v_name,v_no);

------解决方案--------------------
你修改一下变量v_no的名字,试试看看吧
------解决方案--------------------
你在这里面写的字段要和你在users表中的字段一样而且定义的东西要一样啊