/// <summary> /// Executa o salvamento propriamente dito. /// </summary> public void Execute() { sum.Reset(); try { if (dbConn != null) { CommitChanges(); } else { using (dbConn = conn.CreateConnection()) { dbConn.Open(); using (trans = dbConn.BeginTransaction(IsolationLevel.Serializable)) CommitChanges(); } } } catch (ConnectorException) { throw; } catch (Exception ex) { throw ConnectorExceptionFactory.FromDatabaseException(ex); } }
/// <summary> /// Cria o comando de salvamento de alterações para o <see cref="ConnectorBase"/> /// especificado. /// </summary> /// <param name="conn">O <see cref="ConnectorBase"/> a ter seus dados salvos.</param> /// <param name="dbConn">A conexão a ser utilizada</param> /// <param name="trans">A transação ativa</param> public CommitChangesCommand(ConnectorBase conn, AdpConnection dbConn, AdpTransaction trans) : this(conn) { this.disposeDBObjects = false; this.dbConn = dbConn; this.trans = trans; }
/// <summary> /// Atualiza as informações das linhas especificadas no banco de dados. /// </summary> /// <param name="rows">As linhas a atualizar</param> private void CommitChanges(AdpConnection conn, AdpTransaction trans, params DataRow[] rows) { using (CommitRowChangesCommand cmd = new CommitRowChangesCommand(this, conn, trans)) { cmd.Rows = rows; cmd.Execute(); } }
/// <summary> /// Cria um novo comando que encapsula uma chamada a uma Stored Procedure, /// e roda em uma transação. /// </summary> /// <param name="trans">A transação que será utilizada</param> /// <param name="procedureName">O nome da Stored Procedure</param> public StoredProcedureCommand(AdpTransaction trans, string procedureName) { this.cmd = trans.Connection.CreateCommand(); this.cmd.Transaction = trans; this.cmd.CommandType = CommandType.StoredProcedure; this.cmd.CommandText = procedureName; this.cmd.CommandTimeout = DefaultCommandTimeout; }
/// <summary> /// Finaliza os objetos necessários. /// </summary> protected virtual void Dispose(bool disposing) { if (disposing) { if (disposeDBObjects) { if (trans != null) { trans.Dispose(); trans = null; } if (dbConn != null) { dbConn.Dispose(); dbConn = null; } } } }
/// <summary> /// Atribui a transação especificada ao <see cref="AdpDataAdapter"/> especificado. /// </summary> /// <param name="da">O <see cref="AdpDataAdapter"/> onde a transação deve ser atribuída</param> /// <param name="trans">A transação a ser atribuída.</param> protected void SetTransaction(AdpDataAdapter da, AdpTransaction trans) { AdpCommand cmd; if ((cmd = da.SelectCommand) != null) { cmd.Transaction = trans; } if ((cmd = da.UpdateCommand) != null) { cmd.Transaction = trans; } if ((cmd = da.DeleteCommand) != null) { cmd.Transaction = trans; } if ((cmd = da.InsertCommand) != null) { cmd.Transaction = trans; } }
public CommitRowChangesCommand(ConnectorBase conn, AdpConnection dbConn, AdpTransaction trans) : base(conn, dbConn, trans) { }
/// <summary> /// Executa o salvamento propriamente dito. /// </summary> public void Execute() { sum.Reset(); try { if (dbConn != null) CommitChanges(); else { using (dbConn = conn.CreateConnection()) { dbConn.Open(); using (trans = dbConn.BeginTransaction(IsolationLevel.Serializable)) CommitChanges(); } } } catch (ConnectorException) { throw; } catch (Exception ex) { throw ConnectorExceptionFactory.FromDatabaseException(ex); } }
/// <summary> /// Atribui a transação especificada ao <see cref="AdpDataAdapter"/> especificado. /// </summary> /// <param name="da">O <see cref="AdpDataAdapter"/> onde a transação deve ser atribuída</param> /// <param name="trans">A transação a ser atribuída.</param> protected void SetTransaction(AdpDataAdapter da, AdpTransaction trans) { AdpCommand cmd; if ((cmd = da.SelectCommand) != null) cmd.Transaction = trans; if ((cmd = da.UpdateCommand) != null) cmd.Transaction = trans; if ((cmd = da.DeleteCommand) != null) cmd.Transaction = trans; if ((cmd = da.InsertCommand) != null) cmd.Transaction = trans; }
/// <summary> /// Atualiza as informações das linhas especificadas no banco de dados. /// </summary> /// <param name="rows">As linhas a atualizar</param> protected void CommitChanges(AdpTransaction trans, params DataRow[] rows) { CommitChanges(trans.Connection, trans, rows); }
public CommitTableChangesCommand(ConnectorBase conn, AdpConnection dbConn, AdpTransaction trans) : base(conn, dbConn, trans) { }