/// <summary>
/// 返回对应表的模拟自增字段值
/// </summary>
/// <param name="tablename">表名</param>
/// <returns>表的模拟自增字段值</returns>
public decimal GetPKNum(string tablename)
{
switch (sqlType)
{
case "MSSQL2008":
parameters = new List<DbParameter>();
parameters.Add(new SqlParameter("@table_name", SqlDbType.VarChar, ));
parameters.Add(new SqlParameter("@key_value", SqlDbType.Decimal, ));
parameters[].Value = tablename;
parameters[].Direction = ParameterDirection.Output;
break;
case "Oracle":
parameters = new List<DbParameter>();
parameters.Add(new OracleParameter(":tb_name", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2, ));
parameters.Add(new OracleParameter(":key_value", Oracle.ManagedDataAccess.Client.OracleDbType.Decimal));
parameters[].Value = tablename;
parameters[].Direction = ParameterDirection.Input;
parameters[].Direction = ParameterDirection.Output;
break;
default: break;
}
IDBHelper dbhelper = DBFactory.createDBHleper();
return dbhelper.RunProcedure(Utility.DB.PubConstant.ConnectionString,parameters, "up_get_table_key");
}
IDBHelper dbhelper = DBFactory.createDBHleper();是后台创建了一个dbhelp文件,如果当时是Oracle数据库  dbhelper 就为 OracleHelper文件
此oracle 存储过程具有两个参数,key_value 是返回参数out
Utility.DB.PubConstant.ConnectionString是数据库连接字符串
"up_get_table_key"为存储过程名称
 
public DataSet QueryDiagnosisAccordanceRate(string startDate, string endDate, string modality, string hospitalid)
{
switch (sqlType)
{
case "MSSQL2008":
parameters = new List<DbParameter>();
parameters.Add(new SqlParameter("@startDate", startDate));
parameters.Add(new SqlParameter("@endDate", endDate));
parameters.Add(new SqlParameter("@modality", modality));
parameters.Add(new SqlParameter("@hospitalid", hospitalid));
break;
case "Oracle":
parameters = new List<DbParameter>();
parameters.Add(new OracleParameter(":startDate", startDate));
parameters.Add(new OracleParameter(":endDate", endDate));
parameters.Add(new OracleParameter(":modality", modality));
parameters.Add(new OracleParameter(":hospitalid", hospitalid));
OracleParameter p = new OracleParameter(":p_record", OracleDbType.RefCursor);
p.Direction = ParameterDirection.Output;
parameters.Add(p);
break;
default: break;
}
IDBHelper dbhelper = DBFactory.createDBHleper();
return dbhelper.RunProcedure(Utility.DB.PubConstant.ConnectionString, "Proc_DiagnosisAccordance", parameters, "ds");
}

C# 获取 oracle 存储过程的 返回值1的更多相关文章

  1. C# 获取 oracle 存储过程的 返回值

    存储过程 CREATE OR REPLACE PROCEDURE ADMIN.INSERT_OBJ ( OBJEFIRT_parms IN NVARCHAR2, OBJEDATT_parms IN N ...

  2. C#获取执行存储过程的" 返回值"代码

    以下是C#代码: /// <summary> /// 执行存储过程,返回" 返回值" /// </summary> /// <param name=& ...

  3. oracle存储过程(返回列表的存储结合游标使用)总结 以及在java中的调用

    这段时间开始学习写存储过程,主要原因还是因为工作需要吧,本来以为很简单的,但几经挫折,豪气消磨殆尽,但总算搞通了,为了避免后来者少走弯路,特记述与此,同时亦对自己进行鼓励. 以下是我在开发项目中第一次 ...

  4. SqlServer如何获取存储过程的返回值

    1.Output参数返回值 1 CREATE PROCEDURE [dbo].[upInformation]( 2 @age int , 3 @id bigint OUTPUT 4 ) 5 AS 6 ...

  5. 利用SQLServer查询分析器获取存储过程的返回值,检查测试存储过程

    1.存储过程没有返回值的情况(即存储过程语句中没有return之类的语句)用方法 int count = ExecuteNonQuery(..)执行存储过程其返回值只有两种情况(1)如果通过查询分析器 ...

  6. 关于ExecuteNonQuery执行存储过程的返回值 、、实例讲解存储过程的返回值与传出参数、、、C#获取存储过程的 Return返回值和Output输出参数值

    关于ExecuteNonQuery执行存储过程的返回值 用到过ExecuteNonQuery()函数的朋友们在开发的时候肯定这么用过. if(cmd.ExecuteNonQuery("xxx ...

  7. 7 -- Spring的基本用法 -- 10... 获取其他Bean的属性值;获取Field值;获取任意方法的返回值

    7.10 高级依赖关系配置 组件与组件之间的耦合,采用依赖注入管理:但基本类型的成员变量值,应直接在代码中设置. Spring支持将任意方法的返回值.类或对象的Field值.其他Bean的getter ...

  8. Selenium2学习-036-WebUI自动化实战实例-034-JavaScript 在 Selenium 自动化中的应用实例之六(获取 JS 执行结果返回值)

    Selenium 获取 JavaScript 返回值非常简单,只需要在 js 脚本中将需要返回的数据 return 就可以,然后通过方法返回 js 的执行结果,方法源码如下所示: /** * Get ...

  9. Oracle存储过程实现返回多个结果集 在构造函数方法中使用 dataset

    原文 Oracle存储过程实现返回多个结果集 在构造函数方法中使用 dataset DataSet相当你用的数据库: DataTable相当于你的表.一个 DataSet 可以包含多个 DataTab ...

随机推荐

  1. React + Redux 入坑指南

    Redux 原理 1. 单一数据源 all states ==>Store 随着组件的复杂度上升(包括交互逻辑和业务逻辑),数据来源逐渐混乱,导致组件内部数据调用十分复杂,会产生数据冗余或者混用 ...

  2. Jmeter性能测试入门(转)

    出处:http://www.cnblogs.com/by-dream/p/5611555.html Jmeter性能测试步骤 1. 添加线程组之后,先设置这两项: 2. 添加一个http请求 被测的u ...

  3. Erlang&RabbitMQ服务安装配置

    RabbitMQ是流行的开源消息队列系统,是AMQP(Advanced Message Queuing Protocol高级消息队列协议)的标准实现,用erlang语言开发.RabbitMQ据说具有良 ...

  4. visual studio code 安装python扩展

    Ctrl+P 调出控制台,在控制台里输入ext install python,点击第一个安装 如果出现: visual studio code connect ETIMEDOUT 191.238.17 ...

  5. 获得APP当前显示的viewController

    UIViewController* topViewController = ((UINavigationController*)self.window.rootViewController).topV ...

  6. gdb调试报错记录

    警告信息: incompatible implicit declaration of built-in function ‘strlen’ [enabled by default] 原因:未添加< ...

  7. install graph-tool

    try this if ubuntu version is >= 14.04 sudo apt-get update sudo apt-get upgrade sudo apt-get -y i ...

  8. NGUI如何使2D图片按像素1:1显示在屏幕上

    NGUI版本为3.5.1. 将camera 设置为正交模式,size值设为1. UIRoot(2D)有3种缩放样式: 1.PixelPerfect.UI严格按照指定的像素大小显示,不会随着屏幕的分辨率 ...

  9. ubuntu安装谷歌输入法

    1,sudo apt-get install fcitx-googlepinyin 2,在settings->Language Support里将keyboard input method sy ...

  10. Spring Security 从配置入门 学习讲解。刽子手------------securityConfig.xml

    不知道我的web.xml 大家都理解了没.  废话确实有点多,可能很多知识点,大家都知道,可是我学的时候,压根什么都不懂啊.... 这篇我们要讲刽子手  securityConfig. 为什么要说他是 ...