日期:2014-05-19  浏览次数:20566 次

oracle调用存储过程有问题,求高手解答
district表中只有两个字段,一个id,一个name.
创建存储过程如下:

--创建存储过程
create or replace procedure pro_dis
(
  id in integer,
  name out varchar2 
)
as
cursor cur_dis is select name from district where id=id;
begin
  --打开游标
  open cur_dis;
  --如果取到数据
  if cur_dis%notfound then
  dbms_output.put_line('没有找到相关的数据');
  else
  fetch cur_dis into name; 
  dbms_output.put_line('区名:'||name);
  end if;
  --关闭游标
  close cur_dis;
end;

调用存储过程:
declare
  name varchar2(20);
begin
  pro_dis(4,name);
end;

在调用存储过程时,不管我传入的参数是几,输出的结果都是一样的。。。问,该如何解决该问题。

------解决方案--------------------
id=id
字段名和变量名不能区分
我的异常网推荐解决方案:oracle存储过程,http://www.aiyiweb.com/oracle-develop/177537.html