62,046
社区成员
发帖
与我相关
我的任务
分享
/// <summary>
/// 执行多条SQL语句,实现数据库事务。
/// </summary>
/// <param name="SQLStringList">SQL语句的哈希表(key为sql语句,value是该语句的SqlParameter[])</param>
public static void ExecuteSqlTran(Hashtable SQLStringList)
{
using (SqlConnection conn = new SqlConnection(connectionString))
{
conn.Open();
using (SqlTransaction trans = conn.BeginTransaction())
{
SqlCommand cmd = new SqlCommand();
try
{
//循环
foreach (DictionaryEntry myDE in SQLStringList)
{
string cmdText = myDE.Key.ToString();
SqlParameter[] cmdParms = (SqlParameter[])myDE.Value;
PrepareCommand(cmd, conn, trans, cmdText, cmdParms);
int val = cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
}
trans.Commit();
}
catch
{
trans.Rollback();
throw;
}
}
}
}
using (DbConnection conn = new SqlConnection(connectionString))
{
conn.Open();
DbTransaction trans = conn.BeginTransaction();
DbCommand cmd = conn.CreateCommand();
cmd.Transaction = trans;
使用cmd修改其CommandText和Parameters属性提交订单
foreach (你的订单明细)
{
使用cmd修改其CommandText和Parameters属性提交订单明细
}
trans.Commit();
}
using (DbConnection conn = new SqlConnection(connectionString))
{
conn.Open();
DbTransaction trans = conn.BeginTransaction();
DbCommand cmd = conn.CreateCommand();
cmd.Transaction = trans;
使用cmd修改其CommandText和Parameters
属性提交订单
foreach (你的订单明细)
{
使用cmd修改其CommandText和Parameters
属性提交订单明细
}
trans.Commit();
}
}