[C#对Oracle操作]C#操作调用Orcale存储过程有参数
/// <summary>
/// 获取ERP固定资产计提数据
/// </summary>
/// <param name="strCompanyCode">公司代码</param>
/// <param name="strClient">应用环境</param>
/// <param name="strLanguage">语言</param>
/// <param name="strRealDeprarea">账套代码:‘01’、‘02’、‘03’</param>
/// <param name="strFiscalYear">会计年度</param>
/// <param name="strMonth">会计月度:‘mm’</param>
/// <returns>DataTable数据集</returns>
public static DataTable getData(string strCompanyCode, string strClient, string strLanguage, string strRealDeprarea, string strFiscalYear, string strMonth)
{
OracleConnection myOracleConnection = null;
try
{ DataTable dt = new DataTable();
myOracleConnection = new OracleConnection();
myOracleConnection.ConnectionString = ConfigurationManager.ConnectionStrings["FTERP"].ConnectionString;
myOracleConnection.Open();
OracleCommand cmd = new OracleCommand("FXA_MAINVALUEINFO", myOracleConnection);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("v_companycode", OracleType.Char).Direction = ParameterDirection.Input; //指明传入的参数是给Oracle存储过程用的
cmd.Parameters["v_companycode"].Value = strCompanyCode;
cmd.Parameters.Add("v_client", OracleType.Char).Direction = ParameterDirection.Input;
cmd.Parameters["v_client"].Value = strClient;
cmd.Parameters.Add("v_language", OracleType.Char).Direction = ParameterDirection.Input;
cmd.Parameters["v_language"].Value = strLanguage;
cmd.Parameters.Add("v_realdeprarea", OracleType.Char).Direction = ParameterDirection.Input;
cmd.Parameters["v_realdeprarea"].Value = strRealDeprarea;
cmd.Parameters.Add("v_fiscalyear", OracleType.Char).Direction = ParameterDirection.Input;
cmd.Parameters["v_fiscalyear"].Value = strFiscalYear;
cmd.Parameters.Add("v_postperiod", OracleType.Char).Direction = ParameterDirection.Input;
cmd.Parameters["v_postperiod"].Value = strMonth;
cmd.Parameters.Add("v_returnvalue", OracleType.Float).Direction = ParameterDirection.Output;
OracleDataAdapter da = new OracleDataAdapter(cmd);
da.Fill(dt);
string eval = cmd.Parameters["v_returnvalue"].Value.ToString();
//myOracleConnection.Close();
DataTable dtResult = dt.Clone();
foreach (DataRow dr in dt.Rows)
{
dtResult.Rows.Add(dr.ItemArray);
}
return dtResult;
}
catch (Exception ex)
{
throw new Exception(ex.ToString());
}
finally
{
if (myOracleConnection.State == ConnectionState.Open)
{
myOracleConnection.Close();
}
} }
如下是Oracle的存储过程 CREATE OR REPLACE PROCEDURE BZREPDB.FXA_MAINVALUEINFO (
v_companycode IN CHAR,
v_client IN CHAR,
v_language IN CHAR,
v_realdeprarea IN CHAR,
v_fiscalyear IN CHAR,
v_postperiod IN CHAR,
v_returnvalue OUT NUMBER
)
[C#对Oracle操作]C#操作调用Orcale存储过程有参数的更多相关文章
- Jfinal调用Orcale存储过程
因为项目需要,最近一直在学习Orcale存储过程,但发现在网上很少有人写Jave中Jfinal调用Orcale存储过程的文章,即使有也是几年前的,很多都不能用,今天给大家分享一段Jfinal调用Orc ...
- oracle数据库误操作把表删除了,怎样恢复
一:表的恢复 对误删的表,只要没有使用PURGE永久删除选项,那么从flash back区恢复回来希望是挺大的.一般步骤有:1.从flash back里查询被删除的表 select * from re ...
- Oracle闪回操作
Oracle闪回操作 1. 记录当前时间或SCN 在数据库变动前记录时间或SCN SQL> select to_char(sysdate,'YYYY-MM-DD HH24:mi:ss') fr ...
- C#全能数据库操作类及调用示例
C#全能数据库操作类及调用示例 using System; using System.Data; using System.Data.Common; using System.Configuratio ...
- ORACLE数据库误操作执行了DELETE,该如何恢复数据?
ORACLE数据库误操作执行了DELETE,该如何恢复数据? 原创 2016年08月11日 17:23:04 10517 作为一个程序员,数据库操作是必须的,但是如果操作失误,一般都会造成比较严重的后 ...
- 请教怎么查询ORACLE的历史操作记录!
请问如何查询ORACLE的历史操作记录!!!!!我用的是linux oracle 11g r2,想查一下前几天的数据库的历史操作记录,例如对表的insert,delete,update等等的操作记录, ...
- eclipse利用sql语句对Oracle数据库进行操作
对Oracle数据库执行操作的sql语句中表名和列名都需用英文双引号("")括起来. 注(\为转义符) 1.插入数据 sql = "insert into \" ...
- Oracle数据库基础操作语法
转载自:https://www.cnblogs.com/fallen-seraph/p/10685997.html 一.登录Oracle数据库 首先运行Oracle数据库: 默认的有两个账号: 管理员 ...
- oracle中job定时调用存储过程的实例
使用job模拟定时从元数据表中抽取指定数据进入目标表的过程. 一.创建元数据表 --create table test_origianl create table test_original_data ...
随机推荐
- MySQL分布式集群之MyCAT(转)
原文地址:http://blog.itpub.net/29510932/viewspace-1664499/ 隔了好久,才想起来更新博客,最近倒腾的数据库从Oracle换成了MySQL,研究了一段时间 ...
- thinkphp 介绍
一.ThinkPHP的介绍 MVC M - Model 模型 工作:负责数据的操作 V - View 视图(模板) 工作:负责 ...
- 使用sublime编写c/c++ 总结
大块头IDE Visual studio太大了,记事本也能写代码但无疑是装逼过分了.写一些轻量级的c/c++代码使用sublime来写是个很好的选择. 三步走: 编译器(win下安装了vs就使用cl, ...
- 分布式事务(一)两阶段提交及JTA
原创文章,同步发自作者个人博客 http://www.jasongj.com/big_data/two_phase_commit/ 分布式事务 分布式事务简介 分布式事务是指会涉及到操作多个数据库(或 ...
- 2. Transcribing DNA into RNA
Problem An RNA string is a string formed from the alphabet containing 'A', 'C', 'G', and 'U'. Given ...
- CoreData数据库
一 CoreData 了解 1 CoreData 数据持久化框架是 Cocoa API 的一部分,首先在iOSS5 版本的系统中出现: 它允许按照 实体-属性-值 模式组织数据: ...
- pptp 之 静态路由
上网的人总是离不开VPN,你们都懂得.以前总是买付费的VPN,慢的要死,还不便宜.于是就自己买了个国外VPS 搭建了个PPTP,超级简单.网上教程大把大把的. VPN是全局代理,上google啥的没毛 ...
- 【jQuery plug-in】DataTables
1. DOM Position dataTableOption.dom = '<"top"<"pull-left"l><"pu ...
- js 测试
今天js测试题目: 被基础题目虐暴......惨不忍睹 1. var num = 2; switch(num){ case 1: console.log("1"); case 2: ...
- C/C++文字常量与常变量的概念与区别 分类: C/C++ 2015-06-10 22:56 111人阅读 评论(0) 收藏
以下代码使用平台是Windows 64bits+VS2012. 在C/C++编程时,经常遇到以下几个概念:常量.文字常量.符号常量.字面常量.常变量.字符串常量和字符常量,网上博客资料也是千篇千律,不 ...