Sqlsugar调用Oracle的存储过程

前段时间在搬迁项目的时候,遇到一个问题,就是用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,就是没想到过会是一个空字符。

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

相关推荐
你想考研啊2 小时前
mysql数据库导出导入
数据库·mysql·oracle
qq21084629535 小时前
【数据库】TDengine 清理旧数据
数据库·oracle·tdengine
initialize13066 小时前
Postgresql(Oracle兼容) 到Oracle19.9字符语义
数据库·oracle
phltxy7 小时前
MCP 从协议到 Spring AI 实战
人工智能·spring·oracle
j_xxx404_8 小时前
MySQL库操作硬核解析:字符集、校验规则、大小写比较、备份恢复与连接排查
运维·服务器·数据库·人工智能·mysql·ai·oracle
一只fish10 小时前
Oracle官方文档翻译《Database Concepts 26ai》附录-术语表
数据库·oracle
一只fish11 小时前
Oracle官方文档翻译《Database Concepts 26ai》第23章-数据库开发者概念
数据库·oracle
计算机安禾11 小时前
【数据库系统原理】第9篇:SQL的结构化思维:DDL、DML与DCL的职责分离
数据库·sql·oracle
计算机安禾11 小时前
【数据库系统原理】第12篇:视图机制:外模式在SQL层级的逻辑数据独立性实现
数据库·sql·oracle
疯狂成瘾者11 小时前
API Key 生成和鉴权机制:从随机凭证生成到请求拦截校验
数据库·oracle