C#事务处理(Execute Transaction)实例解析
作者:shichen2014 时间:2022-04-12 15:32:43
本文所述为C#事务处理(Execute Transaction)的一个实例,包含了创建SqlTransaction 对象并用SqlConnection对象的BeginTransaction()方法开始事务,创建保存SQL语句,将SqlCommand对象的CommandText属性设置为第一个INSERT语句,第一个INSERT语句在Customers表中增加一行,提交事务,使INSERT语句增加的两行在数据库中保存起来。
具体的实例代码如下:
using System;
using System.Data;
using System.Data.SqlClient;
namespace ExecuteTransaction
{
/// <summary>
/// ExecuteTransaction 的摘要说明。
/// </summary>
public class ExecuteTransaction
{
public static void Main()
{
SqlConnection mySqlConnection =
new SqlConnection(
"server=localhost;database=Northwind;uid=sa;pwd=sa"
);
mySqlConnection.Open();
// 创建SqlTransaction 对象并用SqlConnection对象的
// BeginTransaction()方法开始事务
SqlTransaction mySqlTransaction =
mySqlConnection.BeginTransaction();
// 创建保存SQL语句
SqlCommand mySqlCommand = mySqlConnection.CreateCommand();
// 将Transaction属性设置为上面所生成的SqlTransaction对象
mySqlCommand.Transaction = mySqlTransaction;
// 将SqlCommand对象的CommandText属性设置为第一个INSERT语句,
// 第一个INSERT语句在Customers表中增加一行
mySqlCommand.CommandText =
"INSERT INTO Customers (" +
" CustomerID, CompanyName" +
") VALUES (" +
" 'Micro', 'Microsoft Corporation'" +
")";
// 执行第一个INSERT语句
Console.WriteLine("Running first INSERT statement");
mySqlCommand.ExecuteNonQuery();
// 将SqlCommand对象的CommandText属性设置为第二个INSERT语句,
// 第二个INSERT语句在Orders表中增加一行
mySqlCommand.CommandText =
"INSERT INTO Orders (" +
" CustomerID" +
") VALUES (" +
" 'Micro'" +
")";
// 执行第二个INSERT语句
Console.WriteLine("Running second INSERT statement");
mySqlCommand.ExecuteNonQuery();
// 提交事务,使INSERT语句增加的两行在数据库中保存起来
Console.WriteLine("Committing transaction");
mySqlTransaction.Commit();
mySqlConnection.Close();
}
}
}
标签:C#,事务处理,Execute,Transaction
0
投稿
猜你喜欢
基于android中权限的集合汇总
2023-04-06 09:32:35
Java的SPI机制实例详解
2021-08-15 08:47:41
Android编程实现webview将网页打包成apk的方法
2022-06-30 04:56:16
java WSDL接口webService实现方式
2022-06-15 21:03:29
Eclipse开发环境导入android sdk的sample中的源码
2021-06-08 05:28:38
SpringBoot Pom文件依赖及Starter启动器详细介绍
2022-10-08 19:30:20
深入java垃圾回收的详解
2021-11-19 10:33:06
Java lombok中@Accessors注解三个属性的作用
2022-04-20 14:32:27
Android实现底部导航栏功能(选项卡)
2022-01-08 21:34:14
android实现软件自动更新的步骤
2022-12-27 00:48:17
为Android系统添加config.xml 新配置的设置
2022-02-19 23:31:48
Android实现语音合成与识别功能
2023-10-01 01:41:00
Mybatis之#{}与${}的区别使用详解
2023-03-24 01:55:21
springboot集成RestTemplate及常见的用法说明
2023-02-17 20:02:27
Java下变量大小写驼峰、大小写下划线、大小写连线转换
2022-04-19 15:20:18
C#实现学生成绩管理系统
2021-06-05 22:51:31
Go Java算法猜数字游戏示例详解
2022-03-02 21:01:50
Unity3D UI Text得分数字增加的实例代码
2021-11-13 21:03:10
Android实现简单的文件下载与上传
2022-02-25 00:00:14
Android进程间大数据通信LocalSocket详解
2023-05-21 04:21:23