} //Execute(string sql,System.Data.IDataParameter[] param) /// <summary> /// 执行一个事务 /// </summary> /// <param name="sqls">Sql语句组</param> /// <returns>成功时返回true</returns> public static bool ExecuteTrans(string[] sqls, System.Data.Common.DbConnection Conn) { System.Data.IDbTransaction myTrans; if (Conn == null) { Dbhelper.ErrLog("Dbhelper.ExecuteTrans(string[] sqls):连接对象为空!"); return(false); } System.Data.IDbCommand cmd = Conn.CreateCommand(); myTrans = Conn.BeginTransaction(); cmd.Transaction = myTrans; try { foreach (string sql in sqls) { if (sql != null) { cmd.CommandText = sql; cmd.ExecuteNonQuery(); } } myTrans.Commit(); } catch (Exception ex) { myTrans.Rollback(); Dbhelper.ErrLog("Dbhelper.ExecuteTrans(string[] sqls):" + ex.Message); return(false); } return(true); } //Execute(string sql)
public static bool SendClaimCodes(IList <CouponItemInfo> listCouponItem) { bool Flag = false; Database database = DatabaseFactory.CreateDatabase(); using (System.Data.Common.DbConnection dbCon = database.CreateConnection()) { dbCon.Open(); System.Data.Common.DbTransaction dbTran = dbCon.BeginTransaction(); try { new CouponDao().SendClaimCodesByTran(listCouponItem, dbTran); } catch { dbTran.Rollback(); Flag = false; } finally { dbCon.Close(); } Flag = true; } return(Flag); }
public static bool SendClaimCodesList(CouponItemInfo couponItemInfo, int count) { bool result = false; Database database = DatabaseFactory.CreateDatabase(); using (System.Data.Common.DbConnection dbConnection = database.CreateConnection()) { dbConnection.Open(); System.Data.Common.DbTransaction dbTransaction = dbConnection.BeginTransaction(); try { for (int i = 0; i < count; i++) { new CouponDao().SendClaimCodes(couponItemInfo, dbTransaction); } } catch { dbTransaction.Rollback(); result = false; } finally { dbConnection.Close(); } result = true; } return(result); }
public static void ExecuteNonQuery(System.Data.IDbCommand cmd) { using (System.Data.Common.DbConnection conn = GetConnection()) { if (conn.State != System.Data.ConnectionState.Open) { conn.Open(); } cmd.Connection = conn; using (System.Data.Common.DbTransaction transact = conn.BeginTransaction()) { cmd.Transaction = transact; try { cmd.ExecuteNonQuery(); transact.Commit(); } // End Try catch (System.Exception) { transact.Rollback(); throw; } // End Catch finally { if (conn.State != System.Data.ConnectionState.Closed) { conn.Close(); } } // End Finally } // End Using transact } // End Using conn } // End Sub
public static void InsertList <T>(System.Data.IDbCommand cmd , System.Collections.Generic.IEnumerable <T> listToInsert , callbackAddData_t <T> addDataCallback) { using (System.Data.Common.DbConnection conn = GetConnection()) { if (conn.State != System.Data.ConnectionState.Open) { conn.Open(); } cmd.Connection = conn; using (System.Data.Common.DbTransaction transact = conn.BeginTransaction()) { cmd.Transaction = transact; try { foreach (T thisItem in listToInsert) { addDataCallback(cmd, thisItem); if (cmd.ExecuteNonQuery() != 1) { //'handled as needed, //' but this snippet will throw an exception to force a rollback throw new System.InvalidProgramException(); } } // Next thisObject transact.Commit(); } // End Try catch (System.Exception) { transact.Rollback(); throw; } // End Catch finally { if (conn.State != System.Data.ConnectionState.Closed) { conn.Close(); } } // End Finally } // End Using transact } // End Using conn } // End Sub
public System.Data.Common.DbTransaction BeginTransaction() { _Transaction = _Connection.BeginTransaction(); return(_Transaction); }