4.X版本执行ORACLE存储过程的问题 返回

C#论坛 老数据
2 2507
该叫什么 tóng 发布于2018/5/5
悬赏:5 飞吻

blob.png

--建表
create table TEMP_TRANS_CJ
(
  carno number
  
)

--初始化表
INSERT INTO  TEMP_TRANS_CJ (CARNO) VALUES(1);
INSERT INTO  TEMP_TRANS_CJ (CARNO) VALUES(2);

--创建存储过程
CREATE OR REPLACE PROCEDURE PR_TEST(O_RESULT OUT SYS_REFCURSOR) AS
BEGIN
  OPEN O_RESULT FOR
    SELECT * FROM TEMP_TRANS_CJ;
END;
//方法
public DataTable GetDataTable()
        {
            try
            {
                var db = OracleDao.GetInstance();
                string spName = "PR_TEST";
                var p1 = new SugarParameter("@O_RESULT", null, true);
                p1.IsRefCursor = true;
                var dt3 = db.Ado.UseStoredProcedure().GetDataTable(spName, p1);
                return dt3;
            }
            catch (Exception ex)
            {
                return null;
            }
        }


热忱回答2