Module: Sequel::Postgres::DatasetMethods::PreparedStatementMethods

Included in:
Sequel::Postgres::Dataset::BindArgumentMethods
Defined in:
lib/sequel/adapters/shared/postgres.rb

Overview

Shared methods for prepared statements when used with PostgreSQL databases.

Instance Method Summary collapse

Instance Method Details

#prepared_sqlObject



676
677
678
679
680
681
# File 'lib/sequel/adapters/shared/postgres.rb', line 676

def prepared_sql
  return @prepared_sql if @prepared_sql
  @opts[:returning] = insert_pk if @prepared_type == :insert && supports_insert_select?
  super
  @prepared_sql
end

#run(&block) ⇒ Object

Override insert action to use RETURNING if the server supports it.



668
669
670
671
672
673
674
# File 'lib/sequel/adapters/shared/postgres.rb', line 668

def run(&block)
  if @prepared_type == :insert && supports_insert_select?
    fetch_rows(prepared_sql){|r| return r.values.first}
  else
    super
  end
end