Module: AdapterExtensions::AbstractAdapter
- Included in:
- ActiveRecord::ConnectionAdapters::AbstractAdapter
- Defined in:
- lib/adapter_extensions/adapters/abstract_adapter.rb
Instance Method Summary collapse
-
#add_select_into_table(new_table_name, sql_query) ⇒ Object
Add a chunk of SQL to the given query that will create a new table and execute the select into that table.
-
#bulk_load(file, table_name, options = {}) ⇒ Object
Bulk loading interface.
-
#support_select_into_table? ⇒ Boolean
SQL select into statement constructs a new table from the results of a select.
-
#truncate(table_name, options = nil) ⇒ Object
Truncate the specified table - allow to pass an optional string to let the called add extra parameters like RESET IDENTITY for pg.
Instance Method Details
#add_select_into_table(new_table_name, sql_query) ⇒ Object
Add a chunk of SQL to the given query that will create a new table and execute the select into that table.
33 34 35 |
# File 'lib/adapter_extensions/adapters/abstract_adapter.rb', line 33 def add_select_into_table(new_table_name, sql_query) raise NotImplementedError, "add_select_into_table is an abstract method" end |
#bulk_load(file, table_name, options = {}) ⇒ Object
Bulk loading interface. Load the data from the specified file into the given table. Note that options will be adapter-dependent.
16 17 18 19 20 |
# File 'lib/adapter_extensions/adapters/abstract_adapter.rb', line 16 def bulk_load(file, table_name, ={}) raise ArgumentError, "#{file} does not exist" unless File.exist?(file) raise ArgumentError, "#{table_name} does not exist" unless tables.include?(table_name) do_bulk_load(file, table_name, ) end |
#support_select_into_table? ⇒ Boolean
SQL select into statement constructs a new table from the results of a select. It is used to select data from a table and create a new table with its result set at the same time. Note that this method name does not necessarily match the implementation. E.g. MySQL's version of this is 'CREATE TABLE ... AS SELECT ...'
27 28 29 |
# File 'lib/adapter_extensions/adapters/abstract_adapter.rb', line 27 def support_select_into_table? false end |
#truncate(table_name, options = nil) ⇒ Object
Truncate the specified table - allow to pass an optional string to let the called add extra parameters like RESET IDENTITY for pg
5 6 7 8 9 10 11 12 |
# File 'lib/adapter_extensions/adapters/abstract_adapter.rb', line 5 def truncate(table_name, =nil) statement = [ 'TRUNCATE TABLE', table_name, ].compact.join(' ') execute(statement) end |