Module: ActiveRecord::Import::PostgreSQLAdapter
- Includes:
- ImportSupport
- Included in:
- ConnectionAdapters::PostgreSQLAdapter
- Defined in:
- lib/activerecord-import/adapters/postgresql_adapter.rb
Instance Method Summary collapse
-
#insert_many(sql, values, *args) ⇒ Object
:nodoc:.
- #next_value_for_sequence(sequence_name) ⇒ Object
-
#post_sql_statements(table_name, options) ⇒ Object
:nodoc:.
- #support_setting_primary_key_of_imported_objects? ⇒ Boolean
Methods included from ImportSupport
Instance Method Details
#insert_many(sql, values, *args) ⇒ Object
:nodoc:
4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/activerecord-import/adapters/postgresql_adapter.rb', line 4 def insert_many( sql, values, *args ) # :nodoc: number_of_inserts = 1 base_sql,post_sql = if sql.is_a?( String ) [ sql, '' ] elsif sql.is_a?( Array ) [ sql.shift, sql.join( ' ' ) ] end sql2insert = base_sql + values.join( ',' ) + post_sql ids = select_values( sql2insert, *args ) [number_of_inserts,ids] end |
#next_value_for_sequence(sequence_name) ⇒ Object
19 20 21 |
# File 'lib/activerecord-import/adapters/postgresql_adapter.rb', line 19 def next_value_for_sequence(sequence_name) %{nextval('#{sequence_name}')} end |
#post_sql_statements(table_name, options) ⇒ Object
:nodoc:
23 24 25 26 27 28 29 |
# File 'lib/activerecord-import/adapters/postgresql_adapter.rb', line 23 def post_sql_statements( table_name, ) # :nodoc: unless [:primary_key].blank? super(table_name, ) << (" RETURNING #{[:primary_key]}") else super(table_name, ) end end |
#support_setting_primary_key_of_imported_objects? ⇒ Boolean
31 32 33 |
# File 'lib/activerecord-import/adapters/postgresql_adapter.rb', line 31 def support_setting_primary_key_of_imported_objects? true end |