2010年12月9日 星期四

資料庫交易寫法TransactionScope、SqlTransact

資料庫交易寫法TransactionScope、SqlTransact
資料庫沒有了交易是很要命的,無法確保資料庫的正確,此篇就是在介紹交易的寫法。
string strConn = "連線字串"; 
SqlConnection conn = new SqlConnection(strConn);
conn.Open();
SqlTransaction tran = con.BeginTrasaction();
try
{
SqlCommand cmd = new SqlCommand("SQL語法", conn);
cmd.Transaction = tran;
//做你想做的...
//做完以後
tran.Commit();
}
catch
{
tran.Rollback();//發生例外就會滾回去
}
finally
{
conn.Dispose();
}


  using (TransactionScope scope = new TransactionScope()) 
{
string strConn = "連線字串";
SqlConnection conn = new SqlConnection(strConn);
SqlCommand cmd = new SqlCommand("SQL語法", conn);
try
{
conn.Open();
//做你想做的...
//做完以後
scope.Complete();
}
//Mission Accomplished!
catch (Exception ex)
{
}
//發生例外時,會自動rollback

finally
{
cmd.Dispose();
conn.Close();
conn.Dispose();
}
}

沒有留言:

張貼留言