Methods
Public Instance methods
add_limit!(sql, options)

Alias for add_limit_offset!.

    # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 75
75:       def add_limit!(sql, options)
76:         add_limit_offset!(sql, options) if options
77:       end
add_limit_offset!(sql, options)

Appends LIMIT and OFFSET options to a SQL statement. This method modifies the sql parameter.

Examples
 add_limit_offset!('SELECT * FROM suppliers', {:limit => 10, :offset => 50})

generates

 SELECT * FROM suppliers LIMIT 10 OFFSET 50
    # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 85
85:       def add_limit_offset!(sql, options)
86:         if limit = options[:limit]
87:           sql << " LIMIT #{limit}"
88:           if offset = options[:offset]
89:             sql << " OFFSET #{offset}"
90:           end
91:         end
92:       end
begin_db_transaction()

Begins the transaction (and turns off auto-committing).

    # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 65
65:       def begin_db_transaction()    end
commit_db_transaction()

Commits the transaction (and turns on auto-committing).

    # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 68
68:       def commit_db_transaction()   end
default_sequence_name(table, column)
    # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 94
94:       def default_sequence_name(table, column)
95:         nil
96:       end
delete(sql, name = nil)

Executes the delete statement and returns the number of rows affected.

    # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 40
40:       def delete(sql, name = nil) end
execute(sql, name = nil)

Executes the SQL statement in the context of this connection. This abstract method raises a NotImplementedError.

    # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 29
29:       def execute(sql, name = nil)
30:         raise NotImplementedError, "execute is an abstract method"
31:       end
insert(sql, name = nil, pk = nil, id_value = nil, sequence_name = nil)

Returns the last auto-generated ID from the affected table.

    # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 34
34:       def insert(sql, name = nil, pk = nil, id_value = nil, sequence_name = nil) end
reset_sequence!(table, column, sequence = nil)

Set the sequence to the max value of the table’s column.

     # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 99
 99:       def reset_sequence!(table, column, sequence = nil)
100:         # Do nothing by default.  Implement for PostgreSQL, Oracle, ...
101:       end
rollback_db_transaction()

Rolls back the transaction (and turns on auto-committing). Must be done if the transaction block raises an exception or returns false.

    # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 72
72:       def rollback_db_transaction() end
select_all(sql, name = nil)

Returns an array of record hashes with the column names as keys and column values as values.

   # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 6
6:       def select_all(sql, name = nil)
7:       end
select_one(sql, name = nil)

Returns a record hash with the column names as keys and column values as values.

    # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 11
11:       def select_one(sql, name = nil)
12:       end
select_value(sql, name = nil)

Returns a single value from a record

    # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 15
15:       def select_value(sql, name = nil)
16:         result = select_one(sql, name)
17:         result.nil? ? nil : result.values.first
18:       end
select_values(sql, name = nil)

Returns an array of the values of the first column in a select:

  select_values("SELECT id FROM companies LIMIT 3") => [1,2,3]
    # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 22
22:       def select_values(sql, name = nil)
23:         result = select_all(sql, name)
24:         result.map{ |v| v.values.first }
25:       end
transaction(start_db_transaction = true) {|| ...}

Wrap a block in a transaction. Returns result of block.

    # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 43
43:       def transaction(start_db_transaction = true)
44:         transaction_open = false
45:         begin
46:           if block_given?
47:             if start_db_transaction
48:               begin_db_transaction 
49:               transaction_open = true
50:             end
51:             yield
52:           end
53:         rescue Exception => database_transaction_rollback
54:           if transaction_open
55:             transaction_open = false
56:             rollback_db_transaction
57:           end
58:           raise
59:         end
60:       ensure
61:         commit_db_transaction if transaction_open
62:       end
update(sql, name = nil)

Executes the update statement and returns the number of rows affected.

    # File vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb, line 37
37:       def update(sql, name = nil) end