Sha256: f0ca3872cba02a80f372b34addcf276f7488af7b570c7f63fddcc15dca6b450b

Contents?: true

Size: 866 Bytes

Versions: 19

Compression:

Stored size: 866 Bytes

Contents

class Baza::Driver::Pg::Commands
  def initialize(args)
    @db = args.fetch(:db)
  end

  def upsert_duplicate_key(table_name, updates, terms, args = {})
    @last_insert_table_name = table_name.to_s

    Baza::SqlQueries::PostgresUpsertDuplicateKey.new({
      db: @db,
      table_name: table_name,
      updates: updates,
      terms: terms
    }.merge(args)).execute
  end

  def upsert(table_name, updates, terms, args = {})
    @last_insert_table_name = table_name.to_s

    Baza::SqlQueries::NonAtomicUpsert.new({
      db: @db,
      table_name: table_name,
      terms: terms,
      updates: updates
    }.merge(args)).execute
  end

  def last_id
    @db.query("SELECT LASTVAL() AS id").fetch.fetch(:id).to_i
  end

  def version
    @version ||= @db.query("SELECT VERSION() AS version").fetch.fetch(:version).match(/\APostgreSQL ([\d\.]+)/)[1]
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
baza-0.0.39 lib/baza/driver/pg/commands.rb
baza-0.0.38 lib/baza/driver/pg/commands.rb
baza-0.0.37 lib/baza/driver/pg/commands.rb
baza-0.0.36 lib/baza/driver/pg/commands.rb
baza-0.0.35 lib/baza/driver/pg/commands.rb
baza-0.0.34 lib/baza/driver/pg/commands.rb
baza-0.0.33 lib/baza/driver/pg/commands.rb
baza-0.0.32 lib/baza/driver/pg/commands.rb
baza-0.0.31 lib/baza/driver/pg/commands.rb
baza-0.0.30 lib/baza/driver/pg/commands.rb
baza-0.0.29 lib/baza/driver/pg/commands.rb
baza-0.0.28 lib/baza/driver/pg/commands.rb
baza-0.0.27 lib/baza/driver/pg/commands.rb
baza-0.0.26 lib/baza/driver/pg/commands.rb
baza-0.0.25 lib/baza/driver/pg/commands.rb
baza-0.0.24 lib/baza/driver/pg/commands.rb
baza-0.0.23 lib/baza/driver/pg/commands.rb
baza-0.0.22 lib/baza/driver/pg/commands.rb
baza-0.0.21 lib/baza/driver/pg/commands.rb