/// <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. session的工作原理

    asp中Session的工作原理:asp的Session是具有进程依赖性的.ASP Session状态存于IIS的进程中,也就是inetinfo.exe这个程序.所以当inetinfo.exe进程崩溃 ...

  2. 浅谈对ionic项目的理解

    在思考怎么将客户端app连接到服务器的时候,就在想ionic项目的本质是什么,一开始因为ionic serve这一命令,我以为它自己就是个服务器,但是后来一细想又感觉不是这样,不然客户端又该怎么和服务 ...

  3. 提升你的开发效率,10 个 NPM 使用技巧

    对于一个项目,常用的一些npm简单命令包含的功能有:初始化一个文件夹(npm init),下载npm模块(npm install),创建测试(npm test) 和自定义脚本(npm run).但是, ...

  4. CSS字体属性大全

    文章转自:http://www.10wy.net/Article/CSS/CSS_list_8.html查看更多更专业性的文章请到:网页设计网 CSS字体属性 字体名称属性(font-family) ...

  5. Python 2.7 因为少写括号导致的 SyntaxError 错误

    贴代码: # -*- coding: utf-8 -*- # 控制缩进tab数量 def GetTabStr(tab_num): tab_str = "" for i in xra ...

  6. Apache RewriteRule

    1.Rewirte主要的功能就是实现URL的跳转,它的正则表达式是基于Perl语言.可基 于服务器级的(httpd.conf)和目录级的 (.htaccess)两种方式.如果要想用到rewrite模块 ...

  7. linux中的内存申请函数的区别 kmalloc, vmalloc

    kmalloc是返回连续内存的内存分配函数 vmalloc是返回较大内存空间的,不需要连续的内存分配函数.其速度较慢,并且不能在中断上下文调用.

  8. [Linux-脚本]排序、统计、合并命令

    1.排序命令 - sort: sort可以帮我们进行排序,排序顺序按照LANG(语系环境变量)确定.据观察,sort排序以行为单位进行.排序以第一个不相同的字符决定先后顺序(只与第一个不相同的字符相关 ...

  9. Win7 64位ORACLE取数字乱码的解决

    参见网址http://www.2cto.com/database/201304/201767.html 首先是PLSQL DEVELOPER 直接报错 NLS_LANG 错误 第一步是在命令行下测试 ...

  10. ldap + kerberos + google authentication 实现两步验证

    第一步:ldap + kerberos 整合  ,参考之前的文章 第二步:google authentication 安装配置,参考之前的文章 第三步:整合 ldap + kerberos + goo ...