当前位置: 首页 > news >正文

网站建设类公网站平台建设目标

网站建设类公,网站平台建设目标,工程公司logo图片大全集,外贸汽车配件做那个网站事务适用场景 1 事务使用在存储过程中#xff0c;直接在数据库中进行编写 2 事务使用在Winfrom项目中 SQl#xff1a;使用事务转账操作的实例 一般都会找一个变量记录错误的个数#xff0c;error记录上一句sql的错误和错误编号 declare errornum int 0 -- 定义…事务适用场景 1 事务使用在存储过程中直接在数据库中进行编写         2 事务使用在Winfrom项目中 SQl使用事务转账操作的实例 一般都会找一个变量记录错误的个数error记录上一句sql的错误和错误编号 declare errornum int 0 -- 定义一个记录错误个数的变量 begin transaction -- 开启事务begin-- 转出操作update Card set CurrentMoney CurrentMoney - 100000 where StudentId 1002set errornum errornum error -- 把error加到总的记录上-- 转入操作update Card set CurrentMoney CurrentMoney 100000 where StudentId 1004set errornum errornum ERRORif(errornum 0) -- 证明有错误把之前已经执行的操作回滚到原先的数据上rollback transaction -- 回滚事务else -- 没有错误提交事务commit transactionend go select * from Card 声明一个过程 包含三个输入参数 分别是两个转账的卡号 和转账的金额 use YinHangDB go create procedure tt10000outZhangHao int,ruZhangHao int,Money int asdeclare c1 int 0--错误的个数begin transaction --开启事务begin--转出update Card set CurrentMoney CurrentMoney - Money where StudentId outZhangHaoset c1 c1 ERROR--转入update Card set CurrentMoney CurrentMoney Money where StudentId ruZhangHaoset c1 c1 ERRORif(c10)rollback transactionelse commit transactionendgo select * from Card --测试转账失败的操作 exec tt10000 1000,1001,100000--测试转账成功 exec tt10000 1000,1001,50000 Winfrom 使用事故实例 链接SQl 数据库 public string connString Server.;DatabaseSMDB;Uidsa;Pwd123456; 搭建Winfrom界面 测试事务回滚的方法 private void button1_Click(object sender, EventArgs e){//删除前学生总个数int num1 (int)GetSingleCount(select count(*) from Students);this.listBox1.Items.Add(删除前学生总个数: num1); // 展示在listbox下// 测试删除学生失败进行事务回滚操作//定义一个列表字符串 Liststring list new Liststring(){delete from Students where StudentId 1000005,delete from Students where StudentId 1000024,delete from Students where StudentId 1000006};//执行删除操作 把list里面每一句sql都去执行一下int result 0;try{result UpdateDataBase(list);}catch (Exception ex){this.listBox1.Items.Add(ex.Message);}if (result 0){this.listBox1.Items.Add(删除成功);}else{this.listBox1.Items.Add(删除失败);}this.listBox1.Items.Add(删除之后剩余人数为: (int)GetSingleCount(select count(*) from Students));} 封装多个删除语句执行操作 参数是多个sql的集合 返回值 int是否执行成功 public int UpdateDataBase(Liststring list) {SqlConnection conn new SqlConnection(connString);// new SqlCommand(sql, conn)// 没有指定执行sql 没有指定连接下面必须在写代码把连接对象添加上SqlCommand cmd new SqlCommand(); cmd.Connection conn;try{conn.Open();//开启事务cmd.Transaction conn.BeginTransaction();int result 0;//记录删除时候受影响的行数//取出每一个sql语句 分别执行foreach (string sql in list){//设置执行的sqlcmd.CommandText sql; result cmd.ExecuteNonQuery();// cmd.ExecuteNonQuery() 返回受影响行数如果删除成功了受影响行数不为0}//如果执行错误了 跳转到catch里面 在catch执行回滚// 没有出错 提交事务cmd.Transaction.Commit();return result;}catch(Exception ex){if (cmd.Transaction ! null){cmd.Transaction.Rollback(); // 执行sql语句有错误的情况 执行回滚操作}throw new Exception(执行删除sql事务出错: ex.Message);}finally{// 不管是否执行有误 把事务置为null 清除事务if(cmd.Transaction!null){cmd.Transaction null;}conn.Close();} } 获取数据库个数的方法 public object GetSingleCount(string sql)  {      SqlConnection conn new SqlConnection(connString);      SqlCommand cmd new SqlCommand(sql, conn);      conn.Open();      return cmd.ExecuteScalar();  } 测试事务提交的方法  private void button2_Click(object sender, EventArgs e) {//删除前学生总个数int num1 (int)GetSingleCount(select count(*) from Students);this.listBox1.Items.Add(删除前学生总个数: num1); // 展示在listbox下// 测试删除学生失败进行事务回滚操作//定义一个列表字符串 Liststring list new Liststring(){delete from Students where StudentId 1000033,delete from Students where StudentId 1000031,delete from Students where StudentId 1000032};//执行删除操作 把list里面每一句sql都去执行一下int result 0;try{result UpdateDataBase(list);}catch (Exception ex){this.listBox1.Items.Add(ex.Message);}if (result 0){this.listBox1.Items.Add(删除成功);}else{this.listBox1.Items.Add(删除失败);}this.listBox1.Items.Add(删除之后剩余人数为: (int)GetSingleCount(select count(*) from Students)); }
http://www.hkea.cn/news/14381075/

相关文章:

  • 云空间可以做网站wordpress导航菜单位置
  • 购买了网站如何使用宝安中心医院
  • 网站建设规划书txt微盘营销策略有哪几种
  • 展展示型网站开发网站建设培训 ppt
  • 成都建站提供商百度搜寻网站缩略图如何添加
  • 东莞seo托管竞价页面网站做优化
  • 建站空间哪个好哪里有门户网站开发
  • 网站服务器错误403北京优化seo排名
  • 铭泰东莞网站建设电子商务网站开发系统平台
  • 华为erp企业管理系统软件网站优化推广哪家好
  • xampp做网站九江市建设规划局网站
  • 怎样创造一个网站wordpress小程序前端
  • 免费申请网站域名软件设计的过程
  • 产品网站建设个旧市建设局网站
  • 深圳市做网站的做系统网站提醒有风险
  • 更改wordpress程序站点网址在线网站开发培训
  • 网站开发模块学些什么html友情链接代码
  • 网站更新和维护怎么做做网站的版式会侵权吗
  • 请人做网站谁来维护鞍山网站建设公司
  • 深圳制作网站主页app软件开发公司排行
  • 网站开发从什么学起wordpress和域名
  • 山东临沂网站推广公司注册地址费用
  • 高仿网站源码asp网站开发的主要困难
  • 做个电商网站温州做微网站设计
  • 科右中旗网站建设做网站横幅的图片多大
  • 中国有名的模版网站常见的网络推广工具
  • 怎么诊断网站邢台物流网站建设
  • 推广网站可以做跳转吗wordpress啥意思
  • 济南高新区建设局网站极简风格wordpress主题
  • 一个网站需要多少容量太原百度关键词优化