C#中数据库事务、存储过程基本用法

SQL 事务

 public bool UpdateQsRegisterSql(List<string> ids, int newQueueId, string newQueueName){using (SqlConnection con = new SqlConnection(DBHelper.Instance.ConStr)){SqlTransaction tran = null;try{con.Open();SqlCommand cmd = con.CreateCommand();tran = con.BeginTransaction(IsolationLevel.ReadCommitted);cmd.Transaction = tran;foreach (string item in ids){cmd.CommandText = @"update qs_register set queueid='" + newQueueId+ "',queuename='" + newQueueName + "' where id='" + item + "'";cmd.ExecuteNonQuery();}tran.Commit();return true;}catch (Exception ex){tran.Rollback();return false;}}}

Oracle事务

  public bool UpdateQsRegisterOrcl(List<string> ids, int newQueueId, string newQueueName){using (OleDbConnection con = new OleDbConnection(DBHelper.Instance.ConStr)){OleDbTransaction tran = null;try{con.Open();OleDbCommand cmd = con.CreateCommand();tran = con.BeginTransaction(IsolationLevel.ReadCommitted);cmd.Transaction = tran;foreach (string item in ids){cmd.CommandText = @"update qs_register set queueid='" + newQueueId+ "',queuename='" + newQueueName + "' where id='" + item + "'";cmd.ExecuteNonQuery();}tran.Commit();return true;}catch (Exception ex){tran.Rollback();return false;}}}

Sql存储过程

     /// <summary>/// 直接登记/// </summary>/// <param name="hisExamno">申请单号</param>/// <param name="enrolDoctor">登记医生</param>/// <param name="engname">患者英文名称</param>/// <param name="queueName">队列名称</param>/// <returns></returns>public bool DirectRegisterSql(string hisExamno, string enrolDoctor, string engname, string queueName){using (SqlConnection conn = new SqlConnection(DBHelper.Instance.ConnectionStr)){conn.Open();SqlCommand cmd = conn.CreateCommand();try{//插入号源属性cmd.CommandType = CommandType.StoredProcedure;cmd.CommandText = "PROC_HISEXAMTOENROL";cmd.Parameters.Add("@p_HISEXAMNO", SqlDbType.VarChar).Value = hisExamno;cmd.Parameters.Add("@p_ENROLDOCTOR", SqlDbType.VarChar).Value = enrolDoctor;cmd.Parameters.Add("@p_ENGNAME", SqlDbType.VarChar).Value = engname;cmd.Parameters.Add("@p_AppKind", OleDbType.VarChar).Value = PubVariable.Instance.CurrentDept;cmd.Parameters.Add("@p_QueueName", OleDbType.VarChar).Value = queueName;cmd.Parameters.Add("@p_result", SqlDbType.Int).Value = -1;if (cmd.ExecuteNonQuery() > 0) return true;}catch { return false; }finally{if (conn.State != ConnectionState.Closed){conn.Close();}}}return false;}

Oracle存储过程

  /// <summary>/// 直接登记/// </summary>/// <param name="hisExamno">申请单号</param>/// <param name="enrolDoctor">登记医生</param>/// <param name="engname">患者英文名称</param>/// <param name="queueName">队列名称</param>/// <returns></returns>public bool DirectRegisterOrcl(string hisExamno, string enrolDoctor, string engname, string queueName){using (OleDbConnection conn = new OleDbConnection(DBHelper.Instance.ConnectionStr)){conn.Open();OleDbCommand cmd = conn.CreateCommand();try{//插入号源属性cmd.CommandType = CommandType.StoredProcedure;cmd.CommandText = "PROC_HISEXAMTOENROL";cmd.Parameters.Add("@p_HISEXAMNO", OleDbType.VarChar).Value = hisExamno;cmd.Parameters.Add("@p_ENROLDOCTOR", OleDbType.VarChar).Value = enrolDoctor;cmd.Parameters.Add("@p_ENGNAME", OleDbType.VarChar).Value = engname;cmd.Parameters.Add("@p_AppKind", OleDbType.VarChar).Value = PubVariable.Instance.CurrentDept;cmd.Parameters.Add("@p_QueueName", OleDbType.VarChar).Value = queueName;cmd.Parameters.Add("@p_result", OleDbType.Integer).Value = -1;if (cmd.ExecuteNonQuery() > 0) return true;}catch { return false; }finally{if (conn.State != ConnectionState.Closed){conn.Close();}}}return false;}

  

转载于:https://www.cnblogs.com/YYkun/p/9359513.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/353238.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第一章 初识Mathematica

第一章 初识Mathematica 1&#xff0e;Mathematica是什么 Matematica是由美国Wolfram公司研究开发的一个著名的数学软件&#xff0c;它提供了非常强大的功能&#xff0c;能够完成符号运算、数学图形的绘制、甚至动画制作等多种操作。Matematica的基本系统主要是用C语言开发的&…

matlab中统计工具箱函数名大全

MATLAB统计工具箱包括概率分布、方差分析、假设检验、分布检验、非参数检验、回归分析、判别分析、主成分分析、因子分析、系统聚类分析、K均值聚类分析、试验设计、决策树、多元方差分析、统计过程控制和统计图形绘制等。优化工具箱包括无约束最优化、有约束最优化、二次规划、…

BIOS维修技术

BIOS是电脑中最基础且最重要的程序&#xff0c;为电脑提供最低级且最直接的硬件控制&#xff0c;电脑的原始操作都是依照固化在BIOS里的程序来完成的。因此如果BIOS出现故障将会导致影响电脑的正常工作。BIOS故障有很多&#xff0c;根据常见的BIOS故障现象及其产生的原因&#…

使用Java Servlet,JSP标签和Stormpath快速构建Java Web App

建筑物身份管理&#xff0c;包括身份验证和授权&#xff1f; 尝试Stormpath&#xff01; 我们的REST API和强大的Java SDK支持可以消除您的安全风险&#xff0c;并且可以在几分钟内实现。 注册 &#xff0c;再也不会建立auth了&#xff01; 我们刚刚发布了Java SDK的主要升级版…

Matlab optimtool优化(Optimization)工具箱

1 工具箱概述1.1 功能&#xff08;1&#xff09;求解无约束条件非线性极小值&#xff1b;&#xff08;2&#xff09;求解约束条件下非线性极小值&#xff0c;包括目标逼近问题、极大-极小值问题和半无限极小值问题&#xff1b;&#xff08;3&#xff09;求解二次规划和线性规划…

Python目录链接

第1章  就这么愉快的开始吧 课时1&#xff1a;我和python的第一次亲密接触 一、Python3的下载与安装 二、从IDIE启动Python 三、尝试点新的东西 四、为什么会这样&#xff1f; 五、课时01课后习题及答案 第2章  用Python设计一个游戏 课时2&#xff1a;用python设计第一个…

谚语幸运的开始

谚语:幸运的开始 今天收到一个朋友的邮件&#xff0c;打开一看&#xff0c;是幸运谚语&#xff0c;自以为谚语写的非常好&#xff0c;所以转写出来与朋友们分享&#xff01;希望你能得到幸运哦&#xff01;荷兰的谚语幸运谚语幸运的开始关于金钱&#xff1a;你有了钱&#xff…

VS高版本编写C程序的C4996错误

最简单的可以用的方法:选项Project | Configuration Properties | C/C | Preprocessor | Preprocessor Definitions 添加_CRT_SECURE_NO_DEPRECATE和_SCL_SECURE_NO_DEPRECATE

apache camel_什么时候使用Apache Camel?

apache camelApache Camel是JVM / Java环境中我最喜欢的开源框架之一。 它可以轻松集成使用多种协议和技术的不同应用程序。 本文介绍了何时使用Apache Camel以及何时使用其他替代方法。 问题&#xff1a;企业应用程序集成&#xff08;EAI&#xff09; 由于新产品和新应用&…

Windows、Linux和MAC的CR, LF, CR/LF换行符

在文本处理中, CR, LF, CR/LF是不同操作系统上使用的换行符. Dos和windows&#xff1a; 采用回车换行CR/LF表示下一行. UNIX/Linux &#xff1a; 采用换行符LF表示下一行. MAC OS &#xff1a; 采用回车符CR表示下一行. CR用符号\r表示, 十进制ASCII代码是13, 十六进制代…

GitHub多人协作简明教程

本文面向已经了解/熟悉git基本命令但是并不熟悉如何使用GitHub进行多人协作开发项目的同学。 为了简单起见&#xff0c;这里假设只有两个开发人员&#xff0c;HuanianLi 和 DaxiangLi。他们在GitHub上的地址和角色为&#xff1a; HuanianLi: https://github.com/huanianli # M…

Matlab 图像处理

实验一 Matlab语言、数字图象基本操作 一、实验目的 1、复习MATLAB语言的基本用法&#xff1b; 2、掌握MATLAB语言中图象数据与信息的读取方法&#xff1b; 3、掌握在MATLAB中绘制灰度直方图的方法&#xff0c;了解灰度直方图的均衡化的方法。 二、实验原理 MATLAB是集数值…

JGroups:无需额外基础架构的领导人选举

嗨&#xff0c;您好&#xff0c; 在这篇文章中&#xff0c;我将展示如何在不使用任何其他基础架构&#xff08;例如Apache Zookeeper或Consul&#xff09;的情况下解决领导人选举的问题。 领导者选举是解决以下问题的一种常见方法&#xff1a;在分布式系统中&#xff0c;只有…

8086寄存器

SI源变址寄存器DI目地变址寄存器1:数据寄存器,一般称之为通用寄存器组AH&AL&#xff1d;AX&#xff1a;累加寄存器&#xff0c;常用于运算&#xff1b; BH&BL&#xff1d;BX&#xff1a;基址寄存器&#xff0c;常用于地址索引&#xff1b; CH&CL&#xff1d;CX&…

js中call和apply的作用和用法

call和apply的用途是完全一样的。改变函数中this的指向&#xff1a; 为什么要改变this的指向呢&#xff1f;这个有什么用&#xff1f;有哪些场景呢&#xff1f; 首先this的指向总是在变的&#xff0c;this的指向是由函数执行时所在的环境决定的&#xff0c;而不是函数声明时的环…

二值形态学操作、图像的边缘检测、图像编码

实验五 二值形态学操作 一、实验目的 了解二值形态学的基本运算 掌握基本形态学运算的Matlab实现 了解形态操作的应用 二、原理 收缩和膨胀是数学形态学最基本的变换&#xff0c;数学形态学的应用几乎覆盖了图像处理的所有领域&#xff0c;给出利用数学形态学对二值图像…

初始化思科交换机

Switch#delete flash:vlan.datSwitch#erase startup-configSwitch#reload//重启

Codeforces.666E.Forensic Examination(广义后缀自动机 线段树合并)

题目链接 \(Description\) 给定串\(S\)和\(m\)个串\(T_i\)。\(Q\)次询问&#xff0c;每次询问\(l,r,p_l,p_r\)&#xff0c;求\(S[p_l\sim p_r]\)在\(T_l\sim T_r\)中的哪个串出现次数最多&#xff0c;输出最多次数以及它是\(T\)中的第几个。若最多的有多个&#xff0c;输出下标…

键盘键值分类描述

F1-F12键&#xff1a;值从112-123。 主键盘上数字0-9键&#xff1a;值从48-57。字母A-Z键&#xff1a;值从65-90。 ESC键&#xff1a;值27。"~"符号键&#xff1a;值192。 "-"减号键&#xff1a;189。""等号键&#xff1a;187。 " \ "…

MATLAB中的排序函数

全英文帮助没看懂。sort函数其实就是个排序函数。 sort(A)若A是向量不管是列还是行向量&#xff0c;默认都是对A进行升序排列。sort(A)是默认的升序&#xff0c;而sort(A,descend)是降序排序。 sort(A)若A是矩阵&#xff0c;默认对A的各列进行升序排列 sort(A,dim) dim1时等效…