C#編程之事務用法
更新時間:2015年11月18日 10:37:28 作者:mile
這篇文章主要介紹了C#編程之事務用法,結(jié)合實例形式對比分析了C#中事務提交與回滾的具體實現(xiàn)技巧與相關注意事項,具有一定參考借鑒價值,需要的朋友可以參考下
本文實例講述了C#編程之事務用法。分享給大家供大家參考,具體如下:
ado.net2.0的SqlTransaction使用方法
/////ado.net1.0中使用Transacation(事務)
string connectionString = "database=Northwind;pwd=admin;uid=sa;server=DATABASE-VPC\\SQL2005";
using (SqlConnection conn = new SqlConnection(connectionString))
{
conn.Open();
SqlTransaction transaction = conn.BeginTransaction();
try
{
using (SqlCommand cmd = new SqlCommand())
{
cmd.Connection = conn;
cmd.CommandType = CommandType.Text;
cmd.CommandText = "";
cmd.Transaction = transaction;
cmd.ExecuteNonQuery();
transaction.Commit();//提交事務
}
}
catch
{
transaction.Rollback();//事務回滾
}
/////2.0中使用事務
string connectionString = "database=Northwind;pwd=admin;uid=sa;server=DATABASE-VPC\\SQL2005";
string connectionStringTwo = "database=Test;pwd=admin;uid=sa;server=DATABASE-VPC\\SQL2005";
using (TransactionScope transaction = new TransactionScope())//使用事務
{
try
{
using (SqlConnection conn = new SqlConnection(connectionString))
{
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandText = "insert into [member] (name) values ('test')";
cmd.CommandType = CommandType.Text;
cmd.Connection = conn;
conn.Open();
cmd.ExecuteNonQuery();
}
}
using (SqlConnection conn = new SqlConnection(connectionStringTwo))
{
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandText = "insert into [member] (name) values ('test')";
cmd.CommandType = CommandType.Text;
cmd.Connection = conn;
conn.Open();
cmd.ExecuteNonQuery();
}
}
transaction.Complete();//就這句就可以了。
}
catch (Exception ex) { MessageBox.Show(ex.Message); }
}
ado.net1.0與ado.net2.0中對比
1.0中不能跨數(shù)據(jù)庫,速度慢
2.0中可以跨數(shù)據(jù)庫,2.0中不再使用com+,速度比1.0快50%(因為它不用把大量的時間消耗在查找在com+中)
2.0中的事務會自動判斷使用何種事務(不用您考慮是簡單事務還是分部式事務)。
2.0中的Transactions新添加了命名空間。沒有com+注冊和com+的開銷。
希望本文所述對大家C#程序設計有所幫助。
相關文章
.NET使用C#實現(xiàn)將Word文檔轉(zhuǎn)換為HTML格式
這篇文章主要為大家詳細介紹了如何在.NET平臺使用C#將Word文檔轉(zhuǎn)換為HTML文件,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下2025-01-01
C#定制Excel界面并實現(xiàn)與數(shù)據(jù)庫交互的方法
這篇文章主要介紹了C#定制Excel界面并實現(xiàn)與數(shù)據(jù)庫交互的方法的相關資料,需要的朋友可以參考下2015-11-11

