SQL SERVER-事务的使用

using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Transactions;

namespace ConsoleApp3
{
    class Program
    {
        static void Main(string[] args)
        {
            string source = "server=.;uid=sa;pwd=Server2012;database=D:\\DATABASE\\NORTHWND.MDF";
            using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required))
            {
                using (SqlConnection con = new SqlConnection(source))
                {
                    try
                    {
                        con.Open();
                        string sql1 = "insert into Employees(FirstName,LastName) values('duan','xianmin')";
                        SqlCommand cmd = new SqlCommand(sql1, con);
                        cmd.ExecuteNonQuery();
                        Console.Read();//在此可以输入enter继续,或直接关闭来测试事务
                        string sql2 = "insert into Categories(CategoryName) values('Sea Food')";
                        cmd = new SqlCommand(sql2, con);
                        cmd.ExecuteNonQuery();
                        scope.Complete();//执行到这里则提交,否则回滚;


                    }
                    catch (Exception ex)
                    {

                        Console.WriteLine(ex.Message);
                    }
                    finally
                    {
                        con.Close();
                    }
                }
            }
        }
    }
}
 

猜你喜欢

转载自blog.csdn.net/dxm809/article/details/85757015