string connString = WebConfigurationManager.ConnectionStrings"ConnectionString".ConnectionString; SqlConnection conn = new SqlConnection(connString); conn.Open(); SqlTransaction tran = conn.BeginTransaction(); //創建事務Transaction string strSQL = "INSERT INTO Employees(FirstName, LastName, City, Address) values (@paramFirstName,@paramLastName,@paramCity,@paramAddress)"; SqlCommand cmd = new SqlCommand(strSQL, conn,tran); //創建SqlCommand try { cmd.Parameters.Add("@paramFirstName", SqlDbType.NVarChar, 20).Value = txtFirstName.Text; cmd.Parameters.Add("@paramLastName", SqlDbType.NVarChar, 10).Value = txtLastName.Text; cmd.Parameters.Add("@paramCity", SqlDbType.NVarChar, 15).Value = txtCity.Text; cmd.Parameters.Add("@paramAddress", SqlDbType.NVarChar, 60).Value = txtAddress.Text; cmd.ExecuteNonQuery(); tran.Commit(); //確認事務 txtMsg.Text = "新增數據成功,事務確認!"; } catch { tran.Rollback(); //事務回滾 txtMsg.Text = "新增數據失敗,事務Rollback!"; } finally { conn.Close(); conn.Dispose(); tran.Dispose(); cmd.Dispose(); }