mysql 事务处理
2015-09-24 15:07
531 查看
public class MysqlHelper
{
private static string constr = "server=127.0.0.1;User Id=root;password=000000;Database=aaaaa";
public static void InsertBusines(BusinessReviewDTO dto)
{
MySqlConnection mycon = new MySqlConnection(constr);
MySqlCommand cmd;
mycon.Open();
try
{
cmd = mycon.CreateCommand();
cmd.CommandText ="";
//cmd.Parameters.AddWithValue("@Id", dto.Id);
cmd.ExecuteNonQuery();
}
catch (Exception)
{
throw;
}
finally
{
if (mycon.State == ConnectionState.Open)
{
mycon.Close();
}
}
}
public static int SelectBusines()
{
MySqlConnection mycon = new MySqlConnection(constr);
try
{
string sql = @"select max(id) from businessreviewtable";
MySqlCommand cmd = new MySqlCommand(sql, mycon);
mycon.Open();
MySqlDataReader reader= cmd.ExecuteReader();
if (reader.Read())
{
return reader.GetInt32(0);
}
return 0;
}
catch (Exception)
{
throw;
}
finally
{
if (mycon.State == ConnectionState.Open)
{
mycon.Close();
}
}
}
/// <summary>
/// 执行多条SQL语句,实现数据库事务。
/// </summary>mysql数据库
/// <param name="SQLStringList">多条SQL语句</param>
public static void ExecuteSqlTran(List<PaymentDTO> SQLStringList)
{
using (MySqlConnection conn = new MySqlConnection(constr))
{
conn.Open();
MySqlCommand cmd = new MySqlCommand();
cmd.Connection = conn;
MySqlTransaction tx = conn.BeginTransaction();
cmd.Transaction = tx;
try
{
for (int n = 0; n < SQLStringList.Count; n++)
{
string strsql = InsertPay(SQLStringList
);
if (strsql.Trim().Length > 1)
{
cmd.CommandText = strsql;
cmd.ExecuteNonQuery();
}
//后来加上的
if (n > 0 && (n % 500 == 0 || n == SQLStringList.Count - 1))
{
tx.Commit();
tx = conn.BeginTransaction();
}
}
//tx.Commit();//原来一次性提交
}
catch (System.Data.SqlClient.SqlException E)
{
tx.Rollback();
throw new Exception(E.Message);
}
}
}
private static string InsertPay(PaymentDTO dto)
{
return @"INSERT INTO payment(BillId,pay,paycount,paymoney,payincome) VALUES(" + string.Format("'{0}','{1}',{2},{3},{4}", dto.BillId, dto.Pay, dto.PayCount, dto.PaysMoney, dto.PayIncome) + ")";
}
/// <summary>
/// 执行多条SQL语句,实现数据库事务。
/// </summary>mysql数据库
/// <param name="SQLStringList">多条SQL语句</param>
public static void ExecuteSqlTran(List<DishesTypeDTO> SQLStringList)
{
using (MySqlConnection conn = new MySqlConnection(constr))
{
conn.Open();
MySqlCommand cmd = new MySqlCommand();
cmd.Connection = conn;
MySqlTransaction tx = conn.BeginTransaction();
cmd.Transaction = tx;
try
{
for (int n = 0; n < SQLStringList.Count; n++)
{
string strsql = InsertDis(SQLStringList
);
if (strsql.Trim().Length > 1)
{
cmd.CommandText = strsql;
cmd.ExecuteNonQuery();
}
//后来加上的
if (n > 0 && (n % 500 == 0 || n == SQLStringList.Count - 1))
{
tx.Commit();
tx = conn.BeginTransaction();
}
}
//tx.Commit();//原来一次性提交
}
catch (System.Data.SqlClient.SqlException E)
{
tx.Rollback();
throw new Exception(E.Message);
}
}
}
private static string InsertDis(DishesTypeDTO dto)
{
return @"INSERT INTO disType(BillId,distype,discount,dismoney,disincome) VALUES(" + string.Format("'{0}','{1}',{2},{3},{4}", dto.BillId, dto.DisType, dto.DisCount, dto.DisMoney, dto.DisIncome) + ")";
}
}
{
private static string constr = "server=127.0.0.1;User Id=root;password=000000;Database=aaaaa";
public static void InsertBusines(BusinessReviewDTO dto)
{
MySqlConnection mycon = new MySqlConnection(constr);
MySqlCommand cmd;
mycon.Open();
try
{
cmd = mycon.CreateCommand();
cmd.CommandText ="";
//cmd.Parameters.AddWithValue("@Id", dto.Id);
cmd.ExecuteNonQuery();
}
catch (Exception)
{
throw;
}
finally
{
if (mycon.State == ConnectionState.Open)
{
mycon.Close();
}
}
}
public static int SelectBusines()
{
MySqlConnection mycon = new MySqlConnection(constr);
try
{
string sql = @"select max(id) from businessreviewtable";
MySqlCommand cmd = new MySqlCommand(sql, mycon);
mycon.Open();
MySqlDataReader reader= cmd.ExecuteReader();
if (reader.Read())
{
return reader.GetInt32(0);
}
return 0;
}
catch (Exception)
{
throw;
}
finally
{
if (mycon.State == ConnectionState.Open)
{
mycon.Close();
}
}
}
/// <summary>
/// 执行多条SQL语句,实现数据库事务。
/// </summary>mysql数据库
/// <param name="SQLStringList">多条SQL语句</param>
public static void ExecuteSqlTran(List<PaymentDTO> SQLStringList)
{
using (MySqlConnection conn = new MySqlConnection(constr))
{
conn.Open();
MySqlCommand cmd = new MySqlCommand();
cmd.Connection = conn;
MySqlTransaction tx = conn.BeginTransaction();
cmd.Transaction = tx;
try
{
for (int n = 0; n < SQLStringList.Count; n++)
{
string strsql = InsertPay(SQLStringList
);
if (strsql.Trim().Length > 1)
{
cmd.CommandText = strsql;
cmd.ExecuteNonQuery();
}
//后来加上的
if (n > 0 && (n % 500 == 0 || n == SQLStringList.Count - 1))
{
tx.Commit();
tx = conn.BeginTransaction();
}
}
//tx.Commit();//原来一次性提交
}
catch (System.Data.SqlClient.SqlException E)
{
tx.Rollback();
throw new Exception(E.Message);
}
}
}
private static string InsertPay(PaymentDTO dto)
{
return @"INSERT INTO payment(BillId,pay,paycount,paymoney,payincome) VALUES(" + string.Format("'{0}','{1}',{2},{3},{4}", dto.BillId, dto.Pay, dto.PayCount, dto.PaysMoney, dto.PayIncome) + ")";
}
/// <summary>
/// 执行多条SQL语句,实现数据库事务。
/// </summary>mysql数据库
/// <param name="SQLStringList">多条SQL语句</param>
public static void ExecuteSqlTran(List<DishesTypeDTO> SQLStringList)
{
using (MySqlConnection conn = new MySqlConnection(constr))
{
conn.Open();
MySqlCommand cmd = new MySqlCommand();
cmd.Connection = conn;
MySqlTransaction tx = conn.BeginTransaction();
cmd.Transaction = tx;
try
{
for (int n = 0; n < SQLStringList.Count; n++)
{
string strsql = InsertDis(SQLStringList
);
if (strsql.Trim().Length > 1)
{
cmd.CommandText = strsql;
cmd.ExecuteNonQuery();
}
//后来加上的
if (n > 0 && (n % 500 == 0 || n == SQLStringList.Count - 1))
{
tx.Commit();
tx = conn.BeginTransaction();
}
}
//tx.Commit();//原来一次性提交
}
catch (System.Data.SqlClient.SqlException E)
{
tx.Rollback();
throw new Exception(E.Message);
}
}
}
private static string InsertDis(DishesTypeDTO dto)
{
return @"INSERT INTO disType(BillId,distype,discount,dismoney,disincome) VALUES(" + string.Format("'{0}','{1}',{2},{3},{4}", dto.BillId, dto.DisType, dto.DisCount, dto.DisMoney, dto.DisIncome) + ")";
}
}
相关文章推荐
- loadrunner链接mysql数据库
- mysql cache使用
- MySQL 使用方法简单教程
- MySQL用户管理
- MySql绿色版配置及使用详解
- MySQL用户管理
- mysql中DATE_FORMAT()和str_to_date() 、to_days
- MySql常用操作指令
- MySql出现ERROR 1130
- Navicat for MySQL(mysql图形化管理工具)是什么?
- MySQL下Limit使用及性能分析
- ubuntu安装mysql数据库
- 在MySQL的InnoDB存储引擎中count(*)函数的优化
- win7下loadrunner创建mysql数据库参数化问题解决
- Win7-64bit系统下安装mysql的ODBC驱动
- 新广告法,极限词剔除,替换掉的mysql语句
- MySql创建临时表和特殊关联语句
- Mac下MySql卸载方法
- innobackupex命令对mysql数据库进行完全和增量备份
- MySQL命令大全