首页 > 代码库 > Sql Server事务简单用法
Sql Server事务简单用法
1 var conStr = "server=localhost;database=Data;user=sa;pwd=123456"; 2 using (var connection = new SqlConnection(conStr)) 3 { 4 connection.Open(); 5 var sql = 6 string.Format( 7 "update dbo.AutoStationData set Temperture={0} where StationNum=58365 and DateTime=‘{1}‘", 8.5, 8 new DateTime(2014, 01, 17, 09, 52, 00, 000));//可以正常执行的sql语句 9 10 var sql2 = string.Format(11 "update dbo.AutoStationData set Temperture={0} where StationNu=98801 and DateTime=‘{1}‘", 8.1,12 new DateTime(2014, 01, 17, 09, 52, 00, 000)); //不可以正常执行的sql语句 不存在字段StationNu13 using (var command = new SqlCommand(sql,connection))14 {15 var transation = connection.BeginTransaction();//创建事务16 try17 {18 command.Transaction = transation;19 20 command.CommandText = sql;21 command.ExecuteNonQuery();22 23 command.CommandText = sql2;24 command.ExecuteNonQuery();25 26 transation.Commit();27 }28 catch (Exception e1)29 {30 try31 {32 33 transation.Rollback();34 }35 catch (Exception e2)36 {37 38 Console.Write(e2.Message);39 }40 41 }42 43 }44 }
写一个可以正常执行的sql语句sql,一个错误的sql语句sql2。执行完21行代码,在数据库中查询全表,会显示正在查询...,直接执行后面的代码,由于sql2不能正确执行,跳转到catch,执行回滚,21行修改的字段值还原。数据库这才能执行全表查询 正在查询....变成查询已成功执行。从执行第一个sql语句开始,知道提交事务成功,或者回滚成功这段时间这个事务独占这一张表,也体现了事务的原子性。
Sql Server事务简单用法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。