class Sequel::JDBC::Dataset

  1. lib/sequel/adapters/jdbc.rb
Parent: JDBC

Methods

Public Instance

  1. convert_types
  2. fetch_rows
  3. prepare

Included modules

  1. StoredProcedures

Constants

BLOB_METHOD = tt.method(:blob)  
BUFFERED_READER_METHOD = tt.method(:buffered_reader)  
BYTE_ARRAY_METHOD = tt.method(:byte_array)  
CLOB_METHOD = tt.method(:clob)  
DATE_METHOD = tt.method(:date)  
DECIMAL_METHOD = tt.method(:decimal)  

Cache type translator methods so that duplicate Method objects are not created.

DatasetClass = self  
HASH_MAP_METHOD = tt.method(:hash_map)  
JAVA_BIG_DECIMAL = Java::JavaMath::BigDecimal  
JAVA_BUFFERED_READER = Java::JavaIo::BufferedReader  
JAVA_BYTE_ARRAY = Java::byte[]  
JAVA_HASH_MAP = Java::JavaUtil::HashMap  
JAVA_SQL_BLOB = Java::JavaSQL::Blob  
JAVA_SQL_CLOB = Java::JavaSQL::Clob  
JAVA_SQL_DATE = Java::JavaSQL::Date  
JAVA_SQL_TIME = Java::JavaSQL::Time  
JAVA_SQL_TIMESTAMP = Java::JavaSQL::Timestamp  

Cache Java class constants to speed up lookups

JAVA_UUID = Java::JavaUtil::UUID  
TIME_METHOD = tt.method(:time)  
TYPE_TRANSLATOR_INSTANCE = tt = TYPE_TRANSLATOR.new  
UUID_METHOD = tt.method(:uuid)  

Attributes

convert_types [RW]

Whether to convert some Java types to ruby types when retrieving rows. Uses the database’s setting by default, can be set to false to roughly double performance when fetching rows.

Public Instance methods

fetch_rows (sql, &block)

Correctly return rows from the database and return them as hashes.

[show source]
# File lib/sequel/adapters/jdbc.rb, line 711
def fetch_rows(sql, &block)
  execute(sql){|result| process_result_set(result, &block)}
  self
end
prepare (type, name=nil, *values)

Create a named prepared statement that is stored in the database (and connection) for reuse.

[show source]
# File lib/sequel/adapters/jdbc.rb, line 718
def prepare(type, name=nil, *values)
  ps = to_prepared_statement(type, values)
  ps.extend(PreparedStatementMethods)
  if name
    ps.prepared_statement_name = name
    db.set_prepared_statement(name, ps)
  end
  ps
end