DbHelperSQL 事务写法!
try
{
DBUtility.CommandInfo dbcom = new DBUtility.CommandInfo();
List<DBUtility.CommandInfo> strStranList = new List<DBUtility.CommandInfo>(); StringBuilder strSql = new StringBuilder();
strSql.Append("Update Jia72_Members Set ");
strSql.Append("UserName=@UserName,");
strSql.Append("YTCardId=@YTCardId,");
strSql.Append("CardNum=@CardNum,");
strSql.Append("Bank=@Bank,");
strSql.Append("BankNumber=@BankNumber,");
strSql.Append("QQNumber=@QQNumber,");
strSql.Append("RealName=@RealName,");
strSql.Append("SavedOn=@SavedOn");
strSql.Append(" Where Id=@Id ");
string strSQLM = strSql.ToString(); SqlParameter[] parameters = {
new SqlParameter("@Id",SqlDbType.Int,),
new SqlParameter("@UserName",SqlDbType.NVarChar,),
new SqlParameter("@YTCardId",SqlDbType.Int,),
new SqlParameter("@CardNum",SqlDbType.NVarChar,),
new SqlParameter("@Bank",SqlDbType.NVarChar,),
new SqlParameter("@BankNumber",SqlDbType.NVarChar,),
new SqlParameter("@QQNumber",SqlDbType.NVarChar,),
new SqlParameter("@RealName",SqlDbType.NVarChar,),
new SqlParameter("@SavedOn",SqlDbType.DateTime)
};
parameters[].Value = model.Id;
parameters[].Value = model.UserName;
parameters[].Value = model.YTCardId;
parameters[].Value = model.CardNum;
parameters[].Value = model.Bank;
parameters[].Value = model.BankNumber;
parameters[].Value = model.QQNumber;
parameters[].Value = model.RealName;
parameters[].Value = model.SavedOn; dbcom.CommandText = strSql.ToString();
dbcom.Parameters = parameters;
strStranList.Add(dbcom);//绑定会员信息 //更新卡表
strSql.Clear();
strSql.Append("update Jia72_YTCard set ");
strSql.Append("IsBind=1,");
strSql.Append("SavedOn=getdate()");
strSql.Append(" where Id=" + model.YTCardId); dbcom.CommandText = strSql.ToString();
dbcom.Parameters = null;
strStranList.Add(dbcom);//更新卡表绑定 if (DBUtility.DbHelperSQL.ExecuteSqlTran(strStranList) > )
{
DotNet.Common.MessageBox.ShowAndRedirect(this, "保存成功!", "UserManages.aspx");
}
else
{
MessageBox.Show(this, "操作失败,请联系管理员!");
}
}
catch (Exception ex)
{
LogHelper.WriteWebExLogInfo(this, ex);
MessageBox.Show(this, "操作失败,请联系管理员!");
return;
}
说明:引用 DBUtility 用CommandInfo组织参数!还得用SQLHelper,悲催呀!
DbHelperSQL 事务写法!的更多相关文章
- ASP.NET MVC中使用事务写法
一些项目中,会涉及到事务的写法,比如订单相关,订单成功,会涉及到产品的库存和账户金额的一些信息变动,当然,如果整个流程成功,那是没什么问题,关键是如果中间某一步骤出现bug了,那之前已执行的一些变动就 ...
- PHP 事务写法
$md=new Model(); //创建事务 $md->startTrans(); //开始事务 $md->table("ym_xxx")->where(&qu ...
- CRL快速开发框架系列教程七(使用事务)
本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...
- .Net高级进阶,在复杂的业务逻辑下,如何以最简练的代码,最直观的编写事务代码?
本文将通过场景例子演示,来通俗易懂的讲解在复杂的业务逻辑下,如何以最简练的代码,最直观的编写事务代码. 通过一系列优化最终达到两个效果,1.通过代码块来控制事务(分布式事务),2.通过委托优化Tran ...
- (转).Net高级进阶,在复杂的业务逻辑下,如何以最简练的代码,最直观的编写事务代码?
原文地址:http://www.cnblogs.com/1996V/p/7798111.html 示例一和示例二,主要是来讲解 TransactionScope 是什么,为什么要用Transactio ...
- 快速开发框架CRL3.0发布,附带最新的项目示例CRLShoppingDemo
继上次使用CRL实现大数据分库分表方案升级到2.4,时隔不久又升级到了大版本号3.0,主要是因为结构发生了一些更改 ORM和业务封装Package分开了,增加了实例项目演示代码CRLShoppingD ...
- Sql Server 常用事务处理总结
在数据库操作中,常用事务写法: 1. 通过 @@error 判断一批sql 执行完毕,是否有异常. @@error 为系统变量,每次执行完 sql 都会返回一个数值, 0 表示 执行成功 ,非0 ...
- sql server中嵌套事务*
转自 https://www.cnblogs.com/guanjie20/archive/2013/02/17/2914488.html 我们在写事务时经常遇到的问题如下: 消息 266,级别 16, ...
- Hibernate第二天——实体类 与缓存机制
第二天,我们先来了解一下框架里的一个重要概念:实体类 实体类:把数据表或其它持久化数据的格式映射成的类,就是实体类. 实体类的编写规则:由于对应的是javabean,因而也遵循javabean的一些规 ...
随机推荐
- C#实战Microsoft Messaging Queue(MSMQ)消息队列(干货)<转>
前言 在使用MSMQ之前,我们需要自行安装消息队列组件!(具体安装方法大家自己搜一下吧) 采用MSMQ带来的好处是:由于是异步通信,无论是发送方还是接收方都不用等待对方返回成功消息,就可以执行余下的代 ...
- LeetCode 206. Reverse Linked List(迭代和递归两种实现)
递归的代码比迭代的代码看起来更清爽一些,也是由于递归对行为进行了抽象吧. 注意到,这是一个尾递归函数.一些编译器会将它优化为迭代,这样一方面,在代码层面保持了清晰的逻辑和可读性.一方面保持了代码的性能 ...
- xml初学简单介绍
什么是XML? 1.全称Extensible Markup Language,可扩展标记语言,W3C组织公布. 2.XML用来保存有一定结构关系的数据. 3.标签的嵌套,实质是一串字符串. 4.跨平台 ...
- linux上安装Kafka
写个一篇kafka文章了.但是那都是针对性能来说的,下面看一下完整的,kafka步骤: 安装单机三个 Broker 的 Kafka 集群,使用 Kafka 集群发布和接收消息.学完本课程,对 Kafk ...
- spring mvc 伪静态处理
spring mvc 伪静态处理 @RequestMapping(value = JsonUrlCommand.webshare_get_opuss+"/u{u:[\\w\\W]+}p{p: ...
- lua注册函数
#include <stdio.h> #include <math.h> #define MAX_COLOR 255 extern "C" { #inclu ...
- Python 推导式、迭代器、生成器、模块和包
一.推导式 (一).列表推导式(集合推导式也同理于此) 利用列表推导式,取出1-20内所有偶数 li = [i for i in range(1, 21) if i % 2 == 0] # 如果只有一 ...
- Android笔记之OnLongClickListener
OnLongClickListener中的回调函数boolean onLongClick(View v),其返回值的官方释义如下 如果这个回调消耗了长点击,则返回true,否则返回false. 即使翻 ...
- 基于flask的web微信
web微信 1.扫码获取头像 当你打开web微信的时候,因为http是无状态的,web微信如何实时的获取用户的扫码动作? 那么这里用到的是长轮询的方式. from flask import Flask ...
- Django利用form进行显示
form的显示部分主要分为2部分:1.统一显示(表单里的所有字段): a.{{form.as_table}} b.{{form.as_p}}2.显示部分字段: {{ field.label_tag } ...