oracle

关注公众号 jb51net

关闭
首页 > 数据库 > oracle > Sqlsugar Oracle存储过程

详解Sqlsugar调用Oracle的存储过程

作者:番茄牛腩饭

作者在使用Sqlsugar调用Oracle存储过程时遇到问题,通过添加NuGet包和Oracle驱动,解决了连接问题,并创建了一个测试存储过程来验证,关键点在于游标参数必须为空字符,而不是object或null,感兴趣的朋友跟随小编一起看看吧

前段时间在搬迁项目的时候,遇到一个问题,就是用sqlsugar调用oracle的存储过程的时候调用不了;

当时卡了一整天,现在有空了把这个问题记录分享一下。

先去nuget上安装一下sqlsugar的包:

再安装一个oracle的驱动:

添加一下Json包:

再去创建一下连接

再创建一个测试用的存储过程

create or replace procedure pr_test(i_name   in varchar2,
                                    i_age    in varchar2,
                                    o_result out sys_refcursor) as
begin
  open o_result for
    select * from dual;
end pr_test;

创建一个类来接受存储过程返回的数据

 public class People
    {
        public string Dummy { get; set; }
    }

单独把存储过程里面的那句sql拿出来执行,会得到下面的结果:

dual这个表是oracle提供的一个表,里面就一个X,一般可以用这个来测试数据库连接是不是正常。

调用的方式如下:

里面那个游标的入参必须是个空字符,我之前尝试过object,null,就是没想到过会是一个空字符。

当时也是没想到一个空字符,就把我卡了一个下午,这个坑应该是不会再踩了。

到此这篇关于Sqlsugar调用Oracle的存储过程的文章就介绍到这了,更多相关Sqlsugar Oracle存储过程内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文