人大金昌netcore适配,调用oracle模式下存储过程\包,返回参数游标

cs 复制代码
 using KdbndpConnection conn = new KdbndpConnection("Host=192.168.133.221;Port=54321;Database=db1;Pooling=true;User ID=system;Password=123");
 conn.Open();
 //存储过程调用也是类似
 using var cmd = conn.CreateCommand();
 cmd.CommandText = "模式.包名称.存储过程名称";
 cmd.CommandType = CommandType.StoredProcedure;
 //参数1是普通入参
 var p1 = cmd.CreateParameter();
 p1.ParameterName = "p1";
 p1.Direction = ParameterDirection.Input;
 p1.Value = "123";
 cmd.Parameters.Add(p1);
 //参数2是一个select结果的游标
 var p2 = cmd.CreateParameter();
 p2.ParameterName = "Resultlist";
 p2.Direction = ParameterDirection.Output;
 p2.KdbndpDbType = KdbndpTypes.KdbndpDbType.Refcursor;
 cmd.Parameters.Add(p2);

 //执行
 cmd.ExecuteNonQuery();

 //游标数据获取
 var curName = p2.Value;
 cmd.CommandText = $"fetch all in \"{curName}\"";
 cmd.CommandType = CommandType.Text;
 //生成dt
 DataTable dt = new DataTable();
 using var adp = new KdbndpDataAdapter(cmd);
 adp.Fill(dt);

官网下载的包有问题,使用这个包就ok

https://download.csdn.net/download/pehao/89077002

相关推荐
小码的头发丝、43 分钟前
Django中ListView 和 DetailView类的区别
数据库·python·django
Karoku0661 小时前
【企业级分布式系统】Zabbix监控系统与部署安装
运维·服务器·数据库·redis·mysql·zabbix
周全全1 小时前
MySQL报错解决:The user specified as a definer (‘root‘@‘%‘) does not exist
android·数据库·mysql
白云如幻2 小时前
MySQL的分组函数
数据库·mysql
荒川之神2 小时前
ORACLE 闪回技术简介
数据库·oracle
时差9533 小时前
【面试题】Hive 查询:如何查找用户连续三天登录的记录
大数据·数据库·hive·sql·面试·database
让学习成为一种生活方式3 小时前
R包下载太慢安装中止的解决策略-R语言003
java·数据库·r语言
Mephisto.java3 小时前
【大数据学习 | kafka高级部分】kafka的优化参数整理
大数据·sql·oracle·kafka·json·database
秋意钟4 小时前
MySQL日期类型选择建议
数据库·mysql
Dxy12393102164 小时前
python下载pdf
数据库·python·pdf