oracle 事务提交回滚吗,c# – 提交和回滚Oracle事务
我在oracle中用C#调用这个proc.我让proc返回错误.换句话说,proc失败并且pv_error用字符串填充并且回滚被触发,但是不起作用.我不知道为什么.那么,我做错了什么?提前致谢.
private void hhrcv_update_dc_grs_carton()
{
OracleCommand cmd = new OracleCommand();
cmd.Connection = conn;
conn.Open();
OracleTransaction trans = conn.BeginTransaction();
cmd.CommandTimeout = 0;
cmd.CommandText = "dc.hhrcv_update_dc_grs_carton";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("pn_dc_grs_no", OracleDbType.Number).Value = txtDcGRSNo.Text;
cmd.Parameters.Add("pn_pallet_id_no", OracleDbType.Number).Value = txtPalletId.Text;
cmd.Parameters.Add("pn_carton_code", OracleDbType.VarChar).Value = txtCartonCode.Text;
cmd.Parameters.Add("pn_company_id_no", OracleDbType.Number).Value = Companyid;
cmd.Parameters.Add("pn_order_no", OracleDbType.Number).Value = txtOrderno.Text;
cmd.Parameters.Add("pn_emp_id_no", OracleDbType.Number).Value = empid;
cmd.Parameters.Add(new OracleParameter("pv_error", OracleDbType.VarChar));
cmd.Parameters["pv_error"].Direction = ParameterDirection.Output;
string pv_error;
cmd.ExecuteNonQuery();
pv_error = cmd.Parameters["pv_error"].Value.ToString();
if (pv_error.ToString() == "")
{
trans.Commit();
}
else
{
trans.Rollback();
MessageBox.Show("" + pv_error, "Error");
frmReturns r = new frmReturns();
r.Show();
this.Hide();
}
}
>存储过程未提交
> Oracle SQL开发人员自动提交已禁用
>当我在Oracle SQL开发人员中运行存储过程时,它可以工作(失败 – 就像我已经完成并且没有提交)
>只有在VS2005中运行存储过程时,proc才会失败,触发回滚但不执行它
oracle 事务提交回滚吗,c# – 提交和回滚Oracle事务相关推荐
- 事务的回滚和不提交的区别
当出现异常,事务没有提交,不回滚有影响吗? 1. 在同一事务条件下,回滚和不提交,表现是一样的 但是还有些差别 事务处理,是将操作事件交给数据库(模拟)运行,直到commit操作,才使得修改实际产生效 ...
- sql事务提交回滚命令_提交,回滚和保存点SQL命令
sql事务提交回滚命令 Transaction Control Language(TCL) commands are used to manage transactions in the databa ...
- oracle+ddl+执行很慢,Oracle的DDL语句不能回滚(直接提交)
在Oracle中,Oracle执行DDL前会发出一个COMMIT语句,然后执行DDL操作,最后再发出一个COMMIT操作. 附: DDL(data definition language):creat ...
- git 代码回滚_能提交到远程的Git回滚
很多情况下我们需要回滚代码,最容易想到的就是git reset.但是git reset有个弱点,它是一个彻底的回滚,不能再提交给远程了,因为在提交记录里回滚点之后的记录都不见了. 做一下试验,一个文件 ...
- git如何回滚到指定commit(提交),如何回滚代码
一.假若你始终在一台电脑上提交上传代码,如果你需要回滚到指定commit, 1.直接Git bash打开本地项目所在文件夹, 2.然后输入指令Git log会查看提交历史, 3.找到并复制你要的com ...
- Oracle误操作--被提交后的数据回退(闪回)
由于一时的粗心,在做update操作时,忘记了加where条件,导致全表数据被修改.此类错误实属不该!!特此记录一下!! 网上搜索Oracle数据回退操作,介绍如下: 闪回级别 闪回场景 闪回技术 对 ...
- 一个事务中 可以查询自己未提交的数据吗_数据库事务的方方面面
事务 是关系型数据的一个重要特性,但很少有人能对事务有全面性的了解,这篇文章就把事务的方方面面讲给你. 事务的概念 什么是事务 数据库事务(事务)是数据库管理系统执行过程中的一个逻辑单位,由一个有限的 ...
- 分布式事务解决方案之2PC(两阶段提交)入门简介
什么是2PC? 2PC即两阶段提交协议,是将整个事务流程分为两个阶段,准备阶段(Prepare phase).提交阶段(commit phase),2是指两个阶段,P是指准备阶段,C是指提 ...
- 分布式事务专题(三):分布式事务解决方案之2PC(两阶段提交)
目录: 基础概念 分布式事务理论 分布式事务解决方案之2pc(本章) 分布式事务解决方案之TCC 分布式事务解决方案之可靠消息最终一致性 分布式事务解决方案之最大努力通知 分布式事务综合案例分析 3. ...
- Mysql学习笔记之事务详解(读未提交、读以提交、可重复读、串行化读)
文章目录 1.事务概述 2.事务特性 3.事务隔离级别 4.演示事务 4.1.演示读未提交 4.2.演示读已提交 4.3.演示可重复读 4.4.演示串行化读 1.事务概述 什么是事务? 一个事务是一个 ...
最新文章
- 32位大写 md5 php_编写生成32位大写和小写字符的md5的函数
- Command ‘[‘ninja‘, ‘-v‘]‘ returned non-zero exit status 1
- C#之windows桌面软件第十二课:电脑ADC值显示(上位机),记忆上次串口号,并用TrackBar控件显示ADC值
- hdu 3449(依赖背包)
- SVN - 简单使用手册
- windows下升级nodejs版本
- ie的window.open 未指明的错误_快递问题公告中错误使用“黑恶势力”等言辞 青岛工学院致歉...
- 面试题 04.08. 首个共同祖先
- 在线CSV转XML/JSON工具
- AutoJs学习-实现极乐净土
- 在安卓模拟器(mumu为例)上联调app并且用Charles抓包
- Spark的基本工作流程
- GAMS编写综合能源程序
- VS2013 OpenCV 2.4.9 “HEAP:Invalid Address specified to RtlValidateHeap( 000D0000, 019FEF18 )” 错误
- LeetCode岛屿的最大面积
- 计算机专业的创新方向和创业情况,计算机专业创新创业教育模式探究
- 名帖301 刘墉 行书《自作诗卷》
- USB过压过流保护芯片,可调限流4A,6V过压关闭
- 计算机网络公众号,计算机网络中写公众号文章的软件有哪些
- 电除尘器 matlab,基于MATALAB的静电除尘电源技术仿真