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,就是没想到过会是一个空字符。

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

相关推荐
cqsztech7 小时前
Oracle ai database 26ai rac 通过gold image 更新季度补
数据库·人工智能·oracle
cqsztech8 小时前
银河麒麟v11下 19c noncdb升级到 26ai
oracle
杨云龙UP11 小时前
Oracle 19c RMAN历史备份清理失败:CONTROL_FILE_RECORD_KEEP_TIME 问题排查与整改实战
linux·运维·网络·数据库·oracle·rac
疯狂打码的少年12 小时前
【数据库技术】SQL概述与数据定义(DDL:CREATE/DROP/ALTER)
数据库·笔记·sql·oracle
山峰哥1 天前
数据库工程与查询优化案例深度复盘‌
数据库·sql·oracle·编辑器·深度优先·宽度优先
circuitsosk2 天前
从零搭建行业知识平台:向量库+图数据库+传统关系库的多模检索统一层设计
数据库·python·oracle·向量数据库·rag·多模检索
严同学正在努力2 天前
Oracle Data Guard 容灾实战:从搭建到切换,一篇讲透
数据库·ai·oracle
oradh2 天前
Oracle CTAS+rename 表重建方法操作总结
数据库·oracle·ctas·oracle表重建方法
疯狂打码的少年2 天前
【数据库技术】关系代数连接运算(等值连接/自然连接/外连接)
jvm·数据库·笔记·oracle
烂蜻蜓2 天前
Flask入门教程(十三):数据库操作——SQLAlchemy与CRUD完整实践
数据库·oracle·flask