oracle存储过程
create or replace package FuxjPackage is type FuxjResultSet is ref cursor; end FuxjPackage;
create or replace procedure UpdatefuxjExample (sDM in char,sMC in char, pRecCur in out FuxjPackage.FuxjResultSet)
as
begin
update dm_gj set mc=sMC where dm=sDM;
if SQL%ROWCOUNT=0 then
rollback;
open pRecCur for
select '0' res from dual;
else
commit;
open pRecCur for
select '1' res from dual;
end if;
end;
以上存储过程该怎么调用啊,那个第三个参数不知道怎么传。。。
追问:就是不会弄。。。你能详细点说么
答案:UpdatefuxjExample (sDM in char,sMC in char, pRecCur in out FuxjPackage.FuxjResultSet)
的这个参数pRecCur?pRecCur是游标,类型是 FuxjPackage.FuxjResultSet,你在外面定义个
类型是 FuxjPackage.FuxjResultSet的游标传进去试试
其他:是不是这样:
cmd.Parameters.Add("pRecCur", OracleType.Cursor).Direction = ParameterDirection.InOut;
OracleDataAdapter da = new OracleDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
就把结果放到dt里面了。
上一个:oracle数据库中ID怎么自增长,怎么设置啊?
下一个:Oracle中查询部门编码表中,查询相同部门中同姓名的数据