C# 获取 oracle 存储过程输出参数值
public bool QueueToRegister(string appointsId, string enrolDoctor)
{
using (OleDbConnection conn = new OleDbConnection(DBHelper.Instance.ConnectionStr))
{
conn.Open();
OleDbCommand cmd = conn.CreateCommand();
try
{
//插入号源属性
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "PROC_APPOINTTOENROL";
cmd.Parameters.Add("@p_APPOINTSID", OleDbType.VarChar).Value = appointsId;
cmd.Parameters.Add("@p_ENROLDOCTOR", OleDbType.VarChar).Value = enrolDoctor;
cmd.Parameters.Add("@p_IsUseCallCode", OleDbType.VarChar).Value = PubVariable.Instance.IsUseCallCode;
cmd.Parameters.Add("@p_AreaName", OleDbType.VarChar).Value = PubVariable.Instance.AreaName;
cmd.Parameters.Add("@p_result", OleDbType.Integer).Value = -1;
cmd.Parameters["@p_result"].Direction = ParameterDirection.InputOutput; if (cmd.ExecuteNonQuery() > 0)
{
var aa = cmd.Parameters["@p_result"].Value.ToString();
return true;
}
}
catch { return false; }
finally
{
if (conn.State != ConnectionState.Closed) conn.Close();
}
}
return false;
}
using (OleDbConnection conn = new OleDbConnection(str))
{
OleDbTransaction tran = null;
conn.Open();
OleDbCommand cmd = conn.CreateCommand();
tran = conn.BeginTransaction(IsolationLevel.ReadCommitted);
cmd.Transaction = tran;
try
{
//插入号源属性
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "PROC_APPOINTTOENROL";
cmd.Parameters.Add("@p_APPOINTSID", OleDbType.VarChar).Value = appointsId;
cmd.Parameters.Add("@p_ENROLDOCTOR", OleDbType.VarChar).Value = enrolDoctor;
cmd.Parameters.Add("@p_IsUseCallCode", OleDbType.VarChar).Value = isUseCallCode;
cmd.Parameters.Add("@p_AreaName", OleDbType.VarChar).Value = areaName;
cmd.Parameters.Add("@p_result", OleDbType.Integer).Value = -1;
cmd.Parameters["@p_result"].Direction = ParameterDirection.InputOutput; if (cmd.ExecuteNonQuery() > 0)
{
string result = cmd.Parameters["@p_result"].Value.ToString();
log.WriteLogs("QueueToRegister return p_result:", "返回结果:", result);
if (result.Trim() != "1") return false; tran.Commit();
log.WriteLogs("执行QueueToRegister:", "执行成功", ofdepart);
return true;
}
}
catch (Exception ex)
{
tran.Rollback();
log.WriteLogs("执行QueueToRegister:", "异常", ex.ToString());
return false;
}
finally
{
if (conn.State != ConnectionState.Closed) conn.Close();
}
}
C# 获取 oracle 存储过程输出参数值的更多相关文章
- asp.net C#操作存储过程读取存储过程输出参数值
这段时间在做一个价格平台的项目时候,同事让我写一个存储过程.该存储过程是根据查询条件得出一组新数据,并且返回该组数据的总条数,此处的存储过程我用到了分页,其中主要知识点和难点是之前做项目的时候没有用到 ...
- C# 获取 oracle 存储过程的 返回值1
/// <summary> /// 返回对应表的模拟自增字段值 /// </summary> /// <param name="tablename"& ...
- Oracle存储过程 输出参数赋值异常:“Oracle.DataAccess.Types.OracleString”的类型初始值设定项引发异常。
场景: 写了一个有返回参数的存储过程,在个另开发人员机器上都正常.其它机器报如题错误.让人郁闷的是,所有调用方都是客户端,根本不存在网上众贴所说的版本不一致问题. 分析: 虽然网上的帖子没有根本解决问 ...
- C# 获取 oracle 存储过程的 返回值
存储过程 CREATE OR REPLACE PROCEDURE ADMIN.INSERT_OBJ ( OBJEFIRT_parms IN NVARCHAR2, OBJEDATT_parms IN N ...
- C#获取存储过程返回值和输出参数值的方法
//转自网络,先留个底 1.获取Return返回值 //存储过程 //Create PROCEDURE MYSQL // @a int, // @b int //AS // return @a + @ ...
- C#获取存储过程的 Return返回值和Output输出参数值
1.获取Return返回值 程序代码 //存储过程//Create PROCEDURE MYSQL// @a int,// @b int//AS// return @a + ...
- 关于ExecuteNonQuery执行存储过程的返回值 、、实例讲解存储过程的返回值与传出参数、、、C#获取存储过程的 Return返回值和Output输出参数值
关于ExecuteNonQuery执行存储过程的返回值 用到过ExecuteNonQuery()函数的朋友们在开发的时候肯定这么用过. if(cmd.ExecuteNonQuery("xxx ...
- oracle存储过程获取异常信息码和异常信息
oracle存储过程,可以通过sqlcode 获取异常编码.通过sqlerrm获取异常信息. 例子: create or replace procedure write2blob(p_id in nu ...
- Oracle存储过程获取YYYY-MM-DD的时间格式
环境:Oracle 10g,11g 问题重现:PL/SQL中命令窗口下,发现存储过程得到的时间格式不符合预期要求. SQL> select sysdate from dual; SYSDATE ...
随机推荐
- 第一个React Native项目
1>下图操作创建第一个React Native项目: 用Xcode运行界面如下: 记住: 在使用项目文件期间,终端记住不要关闭的哟!!! 改变了程序代码,需要刷新运行,使用快捷键: Comman ...
- android#使用Intent传递对象
参考自<第一行代码>——郭霖 Intent的用法相信你已经比较熟悉了,我们可以借助它来启动活动.发送广播.启动服务等.在进行上述操作的时候,我们还可以在Intent中添加一些附加数据,以达 ...
- luffycity项目开发
一. 首页的页脚 子组件Footer.vue文件: <template> <div class="footer"> <ul> <li> ...
- 【CodeForces - 682C】Alyona and the Tree(dfs)
Alyona and the Tree Descriptions 小灵决定节食,于是去森林里摘了些苹果.在那里,她意外地发现了一棵神奇的有根树,它的根在节点 1 上,每个节点和每条边上都有一个数字. ...
- #Java第三周总结
第三周实验题目+总结 第一题:打印输出所有的"水仙花数",所谓"水仙花数"是指一个3位数,其中各位数字立方和等于该数本身.例如,153是一个"水仙花数 ...
- P1494 小Z的袜子 【普通莫队】
我的第二道莫队题,对莫队又有了自己的看法. 在第一题的基础上之上,觉得莫队有个很关键的地方在于 莫队所维护的值是什么,怎么推出维护的公式来. 这道题就是这样,一开始还没自己推出公式来,也有几个坑点. ...
- hdoj1011(树上分组背包)
题目链接:https://vjudge.net/problem/HDU-1011 题意:给定一颗树,每个结点有两个属性,即花费V和价值w,并且选择子结点时必须选择父结点,求总花费不超过m的最大价值. ...
- [bzoj4842][bzoj1283][Neerc2016]Delight for a Cat/序列_线性规划_费用流
4842: [Neerc2016]Delight for a Cat_1283: 序列 题目大意:ls是一个特别堕落的小朋友,对于n个连续的小时,他将要么睡觉要么打隔膜,一个小时内他不能既睡觉也打隔膜 ...
- ./configure配置的参数 交叉编译 host,build target的含义
交叉编译 host,build target的含义:build就是你正在使用的机器,host就是你编译好的程序可以运行的平台,target就是你编译的程序可以处理的平台.这个 build和host比较 ...
- 获取web项目的绝对路径的方法总结
一.用Jsp获取 1.获取文件的绝对路径 String file="文件";(例如:data.mdb) String path=application.getRealPath(fi ...