<%@ Import Namespace="System.Data"%>
<%@ Import Namespace="MySql.Data.MySqlClient"%>
<%@ Page Language="C#" Debug="true" %>
<script runat="server">
    void Page_Load(object sender, EventArgs e)
	{
		SampleTransaction();
    }
	void SampleTransaction()
	{
		MySql.Data.MySqlClient.MySqlConnection objConn;
		MySql.Data.MySqlClient.MySqlCommand objCmd;
		String strConnString,strSQL;
		MySqlTransaction Trans;
		strConnString = "Server=localhost;User Id=root; Password=root; Database=mydatabase; Pooling=false";
		objConn = new MySql.Data.MySqlClient.MySqlConnection(strConnString);
		objConn.Open();
		
		//*** Start Transaction ***//
		Trans = objConn.BeginTransaction(IsolationLevel.ReadCommitted);
				
		try
		{
			
			//*** Query 1 ***//
			strSQL = "INSERT INTO customer (CustomerID,Name,Email,CountryCode,Budget,Used) " +
			"VALUES ('C005','Weerachai Nukitram','[email protected]','TH','2000000','1000000')";
			objCmd = new MySql.Data.MySqlClient.MySqlCommand();
			objCmd.Connection = objConn;
			objCmd.Transaction = Trans;
			objCmd.CommandType = CommandType.Text;
			objCmd.CommandText = strSQL;
			objCmd.ExecuteNonQuery();
			//*** Query 2 ***//
			strSQL = "INSERT INTO customer (CustomerID,Name,Email,CountryCode,Budget,Used) " +
			"VALUES ('C005','Weerachai Nukitram','[email protected]','TH','2000000','1000000')";
			objCmd = new MySql.Data.MySqlClient.MySqlCommand();
			 
			objCmd.Connection = objConn;
			objCmd.Transaction = Trans;
			objCmd.CommandType = CommandType.Text;
			objCmd.CommandText = strSQL;
			objCmd.ExecuteNonQuery();
						
			Trans.Commit();  //*** Commit Transaction ***//
			this.lblText.Text = "Record is commit";
			
		}
		catch (Exception ex)
		{		
			Trans.Rollback(); //*** RollBack Transaction ***//
			this.lblText.Text = "Record is rollback ("+ ex.Message +")";
		}	
		
		objCmd = null;
		objConn.Close();
		objConn = null;
	}
</script>
<html>
<head>
<title>ThaiCreate.Com ASP.NET - MySql.Data.MySqlClient</title>
</head>
<body>
	<form id="form1" runat="server">
	<asp:Label id="lblText" runat="Server"></asp:Label>
	</form>
</body>
</html>