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 |