procedure getshipmap
           (v_voyageid sellmap.voyageid%TYPE,
            v_seatcls sellmap.seatcls%TYPE,
            minXpos out NUMBER,
            minYpos out NUMBER,
            maxXpos out NUMBER,
            maxYpos out NUMBER,
            cur_shipmap out shipmap_cursor)
as
beginselect min(Xpos) into minXpos from sellmap where voyageid=v_voyageid and seatcls=v_seatcls;
select min(Ypos) into minYpos from sellmap where voyageid=v_voyageid and seatcls=v_seatcls;
select max(Xpos) into maxXpos from sellmap where voyageid=v_voyageid and seatcls=v_seatcls;
select max(Xpos) into maxYpos from sellmap where voyageid=v_voyageid and seatcls=v_seatcls;open cur_shipmap for
select * from sellmap where voyageid=v_voyageid and seatcls=v_seatcls order by Ypos,Xpos;end getshipmap; 如果是单一返回值,或单一经cursor返回dataset的话就没问题,
但如果要像上面那面同时返回值与数据集的话,在C#中应该怎样操作?

解决方案 »

  1.   

    一般设置out参数返回单个值,例如:public DataSet getData(string 参数1,string 参数2.....,out string myStr)
    {
        myStr=xxxx;//返回单个值
        return 某一个DataSet;//返回DataSet
    }
      

  2.   

    void getshipma(out int minXpos, out int minYpos)
      

  3.   

    添加临时表,out 参数值添加到临时表。
    返回临时表
    或设置返回值为数据集
      

  4.   

    你想做什么?你有一个oracle 的存储过程,你想用C# 去执行它,同时返回数值和游标是么?
      

  5.   

    已经明白了,原来在游标返回数据集后,其它的输出参数还可以直接调用VALUE的.