class Sequel::JDBC::Postgres::Dataset

Dataset subclass used for datasets that connect to PostgreSQL via JDBC.

Constants

APOS
ARRAY_TYPE
HSTORE_TYPE
PG_SPECIFIC_TYPES
STRING_TYPE

Private Instance Methods

literal_sqltime(v) click to toggle source

SQL fragment for Sequel::SQLTime, containing just the time part

# File lib/sequel/adapters/jdbc/postgresql.rb, line 199
def literal_sqltime(v)
  v.strftime("'%H:%M:%S#{sprintf(".%03d", (v.usec/1000.0).round)}'")
end
literal_string_append(sql, v) click to toggle source

Literalize strings similar to the native postgres adapter

# File lib/sequel/adapters/jdbc/postgresql.rb, line 194
def literal_string_append(sql, v)
  sql << APOS << db.synchronize(@opts[:server]){|c| c.escape_string(v)} << APOS
end
type_convertor(map, meta, type, i) click to toggle source
Calls superclass method Sequel::JDBC::Dataset#type_convertor
# File lib/sequel/adapters/jdbc/postgresql.rb, line 208
def type_convertor(map, meta, type, i)
  case type
  when *PG_SPECIFIC_TYPES
    oid = meta.getField(i).getOID
    if pr = db.oid_convertor_proc(oid)
      pr
    elsif type == ARRAY_TYPE
      map[:RubyPGArray]
    elsif oid == 2950 # UUID
      map[STRING_TYPE]
    elsif meta.getPGType(i) == HSTORE_TYPE
      map[:RubyPGHstore]
    else
      super
    end
  else
    super
  end
end