SqlTransaction的解析
来源:互联网 发布:华为java代码规范 编辑:程序博客网 时间:2024/05/14 18:36
SqlTransaction类表示要在SQL Server数据库中处理的Transact-SQL事务。无法继承此类
应用程序通过在SqlConnection 对象上调用BeginTransaction 来创建 SqlTransaction 对象。对SqlTransaction 对象执行与该事务关联的所有后续操作(例如提交或中止该事务)。
注意:在提交或回滚 SqlTransaction 时,应始终使用 Try/Catch 进行异常处理。如果连接终止或事务已在服务器上回滚,则Commit 和Rollback 都会生成
InvalidOperationException
示例:
下面的示例创建一个 SqlConnection 和一个 SqlTransaction。此示例演示如何使用BeginTransaction、Commit 和 Rollback 等方法。出现任何错误时事务都会回滚。Try/Catch 错误处理用于处理尝试提交或回滚事务时的所有错误。
private static void ExecuteSqlTransaction(string connectionString)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
SqlCommand command = connection.CreateCommand();
SqlTransaction transaction;
// Start a local transaction.
transaction = connection.BeginTransaction("SampleTransaction");
// Must assign both transaction object and connection
// to Command object for a pending local transaction
command.Connection = connection;
command.Transaction = transaction;
try
{
command.CommandText =
"Insert into Region (RegionID, RegionDescription) VALUES (100, 'Description')";
command.ExecuteNonQuery();
command.CommandText =
"Insert into Region (RegionID, RegionDescription) VALUES (101, 'Description')";
command.ExecuteNonQuery();
// Attempt to commit the transaction.
transaction.Commit();
Console.WriteLine("Both records are written to database.");
}
catch (Exception ex)
{
Console.WriteLine("Commit Exception Type: {0}", ex.GetType());
Console.WriteLine(" Message: {0}", ex.Message);
// Attempt to roll back the transaction.
try
{
transaction.Rollback();
}
catch (Exception ex2)
{
// This catch block will handle any errors that may have occurred
// on the server that would cause the rollback to fail, such as
// a closed connection.
Console.WriteLine("Rollback Exception Type: {0}", ex2.GetType());
Console.WriteLine(" Message: {0}", ex2.Message);
}
}
}
}
- SqlTransaction的解析
- SqlTransaction
- SqlTransaction
- 解决SqlTransaction用尽的问题
- 解决SqlTransaction用尽的问题
- SqlTransaction 对事物的处理
- sql tran, c# SqlTransaction , TransactionScope 的用法
- ASP.NET Sqltransaction类的使用
- C#使用SqlConnection的事务SqlTransaction
- 不直接用SqlTransaction也能实现数据库事务——简单的SqlTransaction方法
- 解决SqlTransaction用尽的问题(SQL处理超时)
- Transact-SQL事务与SqlTransaction和TransactionScope的使用
- 解决SqlTransaction用尽的问题(SQL处理超时)
- sqlconnection, sqlcommand, sqltransaction,SqlParameter连接数据库的几个对象使用
- SqlTransaction 类
- SqlTransaction 类
- 关于sqltransaction
- SqlTransaction 类
- 一步一步写算法(之洗牌算法)
- 理想流宣言
- 给大家推荐的著名IT网站
- ashx文件中要调用Session需要实现接口IRequiresSessionState
- ZOJ3362 Beer Problem,有重边的最大流最小费用
- SqlTransaction的解析
- memched 协议
- Unix/Linux C++应用开发-虚拟机开发环境搭建
- 微软的野心:Windows 8是战略级的乾坤一击
- 网站优化之关键词下降原因解析
- inotify监控Linux文件系统的必备利器
- 20111010最近学习计划布置
- 职场中必需修炼的七项意识
- 【android学习】NDK安装