Class/Module Index [+]

Quicksearch

Sequel::Amalgalite::Database

Database class for SQLite databases used with Sequel and the amalgalite driver.

Public Instance Methods

connect(server) click to toggle source

Connect to the database. Since SQLite is a file based database, the only options available are :database (to specify the database name), and :timeout, to specify how long to wait for the database to be available if it is locked, given in milliseconds (default is 5000).

# File lib/sequel/adapters/amalgalite.rb, line 66
def connect(server)
  opts = server_opts(server)
  opts[:database] = ':memory:' if blank_object?(opts[:database])
  db = ::Amalgalite::Database.new(opts[:database])
  db.busy_handler(::Amalgalite::BusyTimeout.new(opts.fetch(:timeout, 5000)/50, 50))
  db.type_map = SequelTypeMap.new
  db
end
database_type() click to toggle source

Amalgalite is just the SQLite database without a separate SQLite installation.

# File lib/sequel/adapters/amalgalite.rb, line 76
def database_type
  :sqlite
end
dataset(opts = nil) click to toggle source

Return instance of Sequel::Amalgalite::Dataset with the given options.

# File lib/sequel/adapters/amalgalite.rb, line 81
def dataset(opts = nil)
  Amalgalite::Dataset.new(self, opts)
end
execute(sql, opts={}) click to toggle source

Run the given SQL with the given arguments and yield each row.

# File lib/sequel/adapters/amalgalite.rb, line 102
def execute(sql, opts={})
  _execute(sql, opts) do |conn|
    begin
      yield(stmt = log_yield(sql){conn.prepare(sql)})
    ensure
      stmt.close if stmt
    end
  end
end
execute_ddl(sql, opts={}) click to toggle source

Run the given SQL with the given arguments. Returns nil.

# File lib/sequel/adapters/amalgalite.rb, line 86
def execute_ddl(sql, opts={})
  _execute(sql, opts){|conn| log_yield(sql){conn.execute_batch(sql)}}
  nil
end
execute_dui(sql, opts={}) click to toggle source

Run the given SQL with the given arguments and return the number of changed rows.

# File lib/sequel/adapters/amalgalite.rb, line 92
def execute_dui(sql, opts={})
  _execute(sql, opts){|conn| log_yield(sql){conn.execute_batch(sql)}; conn.row_changes}
end
execute_insert(sql, opts={}) click to toggle source

Run the given SQL with the given arguments and return the last inserted row id.

# File lib/sequel/adapters/amalgalite.rb, line 97
def execute_insert(sql, opts={})
  _execute(sql, opts){|conn| log_yield(sql){conn.execute_batch(sql)}; conn.last_insert_rowid}
end
single_value(sql, opts={}) click to toggle source

Run the given SQL with the given arguments and return the first value of the first row.

# File lib/sequel/adapters/amalgalite.rb, line 113
def single_value(sql, opts={})
  _execute(sql, opts){|conn| log_yield(sql){conn.first_value_from(sql)}}
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.