首页 新闻 会员 周边 捐助

CYQ.Data 使用oracle存储过程问题

0
悬赏园豆:50 [已解决问题] 解决于 2017-12-27 10:50

oracle 存储过程如下:

 1 CREATE OR REPLACE  2 PROCEDURE PROC1(  3 query_id IN VARCHAR2,  4 query_date IN VARCHAR2,  5 result OUT sys_refcursor  6 )  7 IS  8 TSQL VARCHAR2(3000);  9 BEGIN 10 TSQL:=' 11  SELECT 12  CODENAME, 13  ROUND(100*(OK_NUMS/TEST_NUMS),2)||''%'' AS YIELD 14  FROM V_REPORT_DAY 15  WHERE TO_CHAR("TIME",''yyyy-MM-dd'') = '''||query_date 16 ||''' 17  AND ITEM='''||query_id 18 ||''''; 19 20  DBMS_OUTPUT.PUT_LINE(TSQL); 21 --EXECUTE IMMEDIATE TSQL; 22 OPEN result FOR TSQL; 23 END;

C#调用存储过程如下

 1 //调用存储过程  2 using (MProc proc = new MProc("PROC1", m_databinding.m_StrsqlCon))  3  {  4  proc.Clear();  5 proc.Set("query_date", "2017-11-01");//传入存储过程参数   6 proc.Set("query_id", "LED");  7  8 dt_report = proc.ExeMDataTable().ToDataTable();  9 10 11 }

调试时提示参数类型或数目不对,那么该如何取得存储过程的输出result呢? 求解答

damonxx的主页 damonxx | 初学一级 | 园豆:125
提问于:2017-12-26 14:40
< >
分享
最佳答案
0

MProc 有个SetCustome 用来处理游标和返回值,output等特殊值的参数的。

收获园豆:50
路过秋天 | 老鸟四级 |园豆:4794 | 2017-12-26 21:03
其他回答(1)
0

@路过秋天

damonxx | 园豆:125 (初学一级) | 2017-12-26 14:45
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册